- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
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/
FreeGLUT API 文档不包括 glutInitContextVersion 的条目当我用谷歌搜索它时,我发现的只是一个问题列表,这些问题没有直接解决它的用法或影响。 它在任何地方都有记录吗?
我正在练习一些 opengl 代码,但是当我想通过 glutInitContextVersion() 强制 opengl 上下文使用特定版本的 opengl 时,编译过程失败并显示此消息:- use
我是一名优秀的程序员,十分优秀!