34

我刚刚购买了第五版 OpenGL SuperBible。我很高兴他们避免使用已弃用的功能,但他们的示例使用GLTools. GLTools提供了一系列有用的函数来渲染简单的 3D 对象和管理视锥体、相机和变换矩阵。

这一切都很好,但是提供的抽象隐藏了低级细节,而且我很难转移到我无法使用的代码GLTools——例如,pyopengl. 我在网上看到的绝大多数教程都使用即时模式,我试图避免这种模式。那些使用glDrawArrays的人使用glEnableClientState,我也试图避免。

我正在寻找的是完全兼容 OpenGL 3.x 的介绍性教程。如果这个订单太高,也许一份洗衣清单好的“起点”功能就可以了。

4

3 回答 3

45

远离 NeHe,这些教程已经过时了,而且还包含很多“有问题”的东西。

从 3.x 开始,试试这些,它们都是最新的:

Aurian(乔·格罗夫饰)

Arcsynthesis (Jason L. McKesson)

更新:
将近 2 年后重新阅读我自己的帖子,我想有人可能会觉得这听起来有点刺耳。

这当然不是本意。我想给出的核心信息(仍然有效)是 NeHe 仍然处理 OpenGL 1.x/2.x 并使用一些不受支持的“古董”库。
一般来说,这并不意味着教程一定不好,但从那里开始意味着比当前最先进的水平落后两代,并且比最低水平落后一代。以后学习旧版 OpenGL 将要求您忘记几乎所有您所知道的并从头开始重新学习。

也就是说,NeHe 的首页现在链接到Damien Mabin的 OpenGL 3.3 教程,乍一看还不错(虽然我没有时间在新年前通读一遍)。

于 2011-02-06T18:59:39.690 回答
3

https://bitbucket.org/rndblnch/opengl-programmable

OpenGL 可编程管道 (OpenGL / OpenGL|ES 2.x) 的简短分步教程,供已经熟悉固定管道的人使用。依赖项:python 2.5+,PyOpenGL 3.0.1+

一个小型但相当完整的 glut/opengl 程序的连续版本,它从直接模式开始,逐步转换为专门在可编程管道上运行。查看连续版本之间的差异以突出显示所需的更改(例如,https ://bitbucket.org/rndblnch/opengl-programmable/changeset/b21131e37ed7 )。

于 2011-01-14T17:45:05.670 回答
3

这是一系列适用于 Windows 的 OpenGL 3.3 教程,不使用任何已弃用的功能,仅使用新内容:

兆字节软件 OpenGL 3.3 教程

于 2012-07-12T10:15:14.297 回答