【问题标题】:Where can I find a good online OpenGL 3.0 tutorial that doesn't use any deprecated functionality? [closed]我在哪里可以找到不使用任何已弃用功能的优秀在线 OpenGL 3.0 教程? [关闭]
【发布时间】:2011-06-01 08:26:06
【问题描述】:

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

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

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

【问题讨论】:

  • 撕掉GLTools 正在使用的代码序列有什么问题?

标签: opengl deprecated opengl-3 pyopengl


【解决方案1】:

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

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

Aurian(乔·格罗夫)

Arcsynthesis (Jason L. McKesson)

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

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

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

【讨论】:

  • 我同意,像 glaux.h 这样的旧库甚至不再受支持。推荐 NeHe 的问题由于仍然是“OpenGL 教程”的第一名谷歌结果而加剧。难怪还有这么多人蜂拥而至。
  • 快速提示:在撰写本文时,第一个链接 (Aurian) 似乎是对 OpenGL 的快速而肮脏的介绍,而第二个链接似乎是更完整、更深入和 (in我的意见)对整个规范/C API 的更专业的概述。我个人认为 Archsynthesis 非常宝贵。来自我的 +1。
  • 另外:这两个教程都使用较旧的 3.0 之前的功能。
【解决方案2】:

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)。

【讨论】:

    【解决方案3】:

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

    Megabyte Softworks OpenGL 3.3 Tutorials

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2013-03-05
      • 1970-01-01
      • 2010-11-04
      • 2011-01-09
      • 1970-01-01
      • 1970-01-01
      • 2011-06-13
      相关资源
      最近更新 更多