gpt4 book ai didi

opengl - glutInitContextVersion 的文档在哪里?

转载 作者:行者123 更新时间:2023-12-04 19:04:43 26 4
gpt4 key购买 nike

FreeGLUT API 文档不包括 glutInitContextVersion 的条目当我用谷歌搜索它时,我发现的只是一个问题列表,这些问题没有直接解决它的用法或影响。

它在任何地方都有记录吗?

最佳答案

glutInitContextVersion不是官方 GLUT API 的一部分(顺便说一句。完全过时了),而是由 freeglut 添加的非官方扩展。然而,一旦知道 OpenGL 的上下文版本是如何工作的,它的用法就很直接了,这是在 ARB_create_context 中定义的。扩展家族。

该函数将在实际创建上下文时选择请求哪个 OpenGL 版本。请注意,这不需要实现返回与您请求的版本完全一致的上下文,但它应该返回一个与请求的版本兼容的上下文,以便该版本的所有功能都存在。

有一些事情似乎是关于 freeglut 处理这个问题的。通过查看代码(对于当前稳定版本 2.8.1),可以看到 freeglut 实现了以下逻辑:
如果实现不能满足版本约束,但确实支持 ARB_create_context扩展,它会产生一些错误并且不会创建上下文。但是,如果请求一个版本,但实现甚至不支持相关扩展,则会创建旧的 GL 上下文,从而完全忽略版本请求。这对我来说似乎有点不一致。但是,由于这些东西没有记录在案,也不属于 GLUT 规范的一部分,因此尚不清楚这种行为将来是否会保持不变。

如果您不需要某些特定于 GLUT 的功能(无论如何这些功能基本上都依赖于已弃用的 OpenGL),您可能需要查看一些更现代的替代品,例如 GLFW .

关于opengl - glutInitContextVersion 的文档在哪里?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27958770/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com