有很多OpenGL教程 - 我认为其中90%以上的人使用glBegin()/ glEnd(),并在这两个调用之间设置顶点。现在我发现有些人告诉我这些函数已被弃用,并且不再可用于新版本的OpenGL。OpenGL 2.1和glBegin()/ glEnd()
所以:这是正确的吗?
在我的应用程序中,我必须与OpenGL 2.1兼容。
有很多OpenGL教程 - 我认为其中90%以上的人使用glBegin()/ glEnd(),并在这两个调用之间设置顶点。现在我发现有些人告诉我这些函数已被弃用,并且不再可用于新版本的OpenGL。OpenGL 2.1和glBegin()/ glEnd()
所以:这是正确的吗?
在我的应用程序中,我必须与OpenGL 2.1兼容。
是的,不推荐使用glBegin()/ glEnd()方法。 glDrawArrays是一种现代化的方法,它在OpenGL 2.1中可用。这里是related question on SO。
另外,我怀疑这个90%的价值。
答案是肯定的,不是。 OpenGL 2和更多的精神是不再使用即时模式和固定管道。从OpenGL 3开始,这些都被“弃用”。 但幸运的是在同一时间被识别为“Legacy OpenGL”和ARB compatibility的扩展名。所以你可以继续使用它们(模块化操作系统之间有关内部或不内部的一些变化)。
https://open.gl是一个体面的教程,使用核心OpenGL。 –