我从第三个学期开始学习计算机科学,我们刚刚开始学习openGl 1.0。我们正在做非常基础的工作(api背后的数学运算)。
本课程分4个部分,共4个学期。
现在我真的很想边听这个讲座边看书,但我不知道该读哪一本。
我应该买一本opengl 1或opengl 3+的书吗?
或者我应该等到我们开始学习opengl3,同时阅读一本关于数学的书,比如this
发布于 2012-12-10 08:30:50
用于学习3D图形的旧版本OpenGL没有任何问题。C编程语言已经有40年的历史了,Lisp甚至更多,但它们仍然是相关的。我确实认为至少使用OpenGL 1.3或2.0/2.1是很重要的,因为像大多数软件一样,OpenGL 1.0有一些可怕的地方,在后来的版本中很快就被修复了。
使用OpenGL 1.x或2.x,您将学习3D图形的基础知识:多边形几何、嵌套变换、灯光和材质、纹理映射。而且,使用OpenGL 1或2比使用3或4更容易学习,因为OpenGL 1/2中有更多的内置功能,而且有很多年的书籍和在线教程可供参考。
要阅读的书籍:“红皮书”OpenGL编程指南,最好是较老的第三版或第四版;或者OpenGL SuperBible,也是第二版或第三版。您还可以查找优秀的NeHe web教程--对于OpenGL 1/2,这些教程现在被称为“遗留教程”。对于3D图形背后的数学知识,我推荐Dunn & Parberry的3D Math Primer For graphics and Game Development。
在OpenGL 1.x中你没有得到的是现代GPU的着色器。一旦你掌握了基础知识,你就可以开始使用OpenGL 2中的顶点着色器和片段着色器了。一旦你对它们感到满意,就开始为OpenGL 4编程。(我建议跳过3,直接转到OpenGL 4/ DirectX 11。)
本文假设您希望自上而下地学习,首先从为您完成大部分工作的内置API函数开始,然后逐步深入到更多细节。如果你更愿意深入研究,你会想要OpenGL SuperBible 5版和带有OpenGL 4的现代图形处理器。这不是我喜欢的方法,因为我OpenGL 3/4是"3D汇编语言“,学习曲线非常陡峭,但有些人确实更喜欢它。
希望这能有所帮助。
发布于 2012-12-10 05:06:38
OpenGL-1.0 -哇,已经有20多年的历史了。或者你的意思是OpenGL-1.1,仍然超过15岁。无论如何,请告诉你的教授或助教将来教一些有用的东西;你可能不是在上计算机图形学的课程。
你绝对应该学习OpenGL-3甚至更多。版本3确实引入了早就应该进行的API清理,实际上,从长远来看,必须使用着色器的要求使事情变得更容易。
https://stackoverflow.com/questions/13791268
复制相似问题