学习 OpenGL 用哪个版本好?

熟悉C++,MFC,GDI,但是不熟悉图形,现在学OpenGL,网上都推荐OpenGL编程指南和OpenGL超级宝典两本书,还说超级宝典翻译的不好,那…
关注者
926
被浏览
259,788

17 个回答

不同意

@邱晓峰

入门用NEHE的建议。虽然十分经典,但经典也意味着老旧,全是固定管线内容,且不成体系。如果需要和一些固定管线的老代码打交道,那NEHE还是值得一看的。

同意

@倪朝浩

至少从GL 2.0看起(目前已经4.3了)。一定得熟悉VAO/VBO/FBO等等。我曾耗费很多时间学固定管线,但学了shader后才感觉走上了正道,才是真正地零距离接触到了pipeline。当你去自己生成MVP、自己实现Phong Shading时,和简单的用一下glTranslatef, glLightfv这些API的感觉是不一样的。关于用什么书,我以前回答过这个问题

初学者学习opengl是用红宝书好还是蓝宝书好?

。另外网上教程也有蛮多,我所知比较好的有(欢迎补充)

  1. opengl-tutorial.org OpenGL 3.3+ Tutorial[我正在翻译这个教程,断断续续做了一年多。你可以通过切换语言看到我最初的翻译。后来我们还在做修订。可耻地做个广告github.com/cybercser/Op]
  2. OpenGL Step by Step
  3. Lighthouse3d.com
  4. Home – Swiftless Tutorials
  5. OpenGL 3.3 - Tutorials
  6. tomdalling.com/blog/cat
  7. open.gl/

关于OpenGL ES/WebGL我知道的挺少,欢迎补充。

补充(2014年2月16日10:11:42):如果想在Mac上学OpenGL,这个Apple官方网站真心很不错OpenGL for OS X,这个页面上有个视频讲解怎样从固定管线迁移到Shader,讲的很好。

修改时间 2014年3月26日21:24:53

OpenGL蓝宝书已有第六版,红宝书有第八版,均完全剔除固定管线内容,全面介绍shading language。


修改时间 2016年2月3日20:23:27

补充一个目前看来最好的教程网站 learnopengl.com/

什么版本都不用管 先实现一遍底层的光栅化的3D渲染算法,只用一个画像素的功能,把插值,zbuffer,alpha,阴影,三角形的光栅化,全自己底层实现一遍,之后进阶挑nvidia 的sdk里的例子逐句看,siggraph早期的gpgpu的论文挑自己觉得有趣的去实现,shaderX,gpu gems里头拿感兴趣的实现,我就是这么过来的,后来去了皮克斯做R&D,现在在Weta Digital做R&D