我将开始在我的应用程序中实现OpenGL 3。我目前使用的是OpenGL 1.1,但我想保留一些,因为如果我尝试更改代码时会出现问题,但我想将我的一些绘图代码更改为更快的OpenGL版本。如果我在OpenGL 1.1中做了类似绑定纹理的事情,我能在OpenGL 3中绘制纹理吗?
发布于 2013-07-01 02:08:30
混合OpenGL版本不像以前那么容易了。在OpenGL 3.0中,许多旧功能被标记为“不推荐使用”,并在3.1中被删除。然而,从核心3.2开始,定义了两个配置文件:核心和Compatibility.OpenGL上下文是针对这样的配置文件创建的。您甚至可以将自定义顶点着色器与固定函数片段处理混合使用,反之亦然。
在MacOS X上,仅核心配置文件支持OpenGL 3.x和4.x。
在您的特定示例中,绑定纹理将在所有情况下工作,因为该功能在从1.1到4.3的所有版本中都存在,未经修改(并且很可能在不久的将来这样做)。但是,您的大多数绘制调用可能在较新的核心配置文件中不可用。
发布于 2013-06-30 23:23:02
天哪..。opengl 1.1来自1997年!帮你自己一个忙,摆脱固定功能的流水线的东西,适应OpenGL 4.x。但是,您可以尝试#version420 core
在您的着色器中。
https://stackoverflow.com/questions/17390219
复制相似问题