我目前正在通过5th Superbible学习OpenGL.它会教你核心资料.但我真的很困惑.
我知道khronos删除了3.3中的固定功能管道,并将一些函数声明为已弃用.但Superbible现在只是用自己的功能取代那些已弃用的功能.
为什么khronos应该删除像glRotate或matrixstack这样的东西,以便我必须使用第三方库(或我自己的)而不是官方库?
也许这个超级明星有缺陷?
glRotate()等被删除,因为内部openGL处理矩阵所以它是一个更简洁的设计,让你直接提供矩阵.
几乎所有复杂的openGL应用程序都会做一些其他矩阵的东西,并且会有自己的矩阵类,openGL更容易获取结果,而不是坚持从一堆旋转/平移/缩放中创建它们调用.
他们可以提供自己的矩阵类 - 但是你可以使用很多第三方库.openGL的一个策略(失败)是它确实依赖第三方库来执行实际图形之外的任何事情.因此,初学者程序是GLUT,GLEW,SDL等的一个棘手组合,可以在屏幕上显示任何内容 - 而DirectX拥有开箱即用的所有功能.
归档时间: |
|
查看次数: |
637 次 |
最近记录: |