OpenGL红皮书,OpenGL编程指南-版本2或版本2.1-寻找购买建议 从大学图书馆借了一本书。这不是我所希望的。。。

OpenGL红皮书,OpenGL编程指南-版本2或版本2.1-寻找购买建议 从大学图书馆借了一本书。这不是我所希望的。。。,opengl,Opengl,您好,我是一名学生,整个夏天我借用了OpenGL编程指南,版本为4.3,这是我的大学在主库中似乎只有的一个版本 我已经了解了一点如何将OpenGL与SFML、SDL和glut结合使用。我借了这本书来帮助我扩展知识 不幸的是,我发现4.3这本书很难理解。我确信我读过一本类似的书(一本旧版本的书,当时它被称为“红皮书”),我发现它更容易理解 我能借到2.1版的书,我相当肯定这是我读过的部分书。到目前为止,我发现它更容易理解。它当然更适合非专家和经验较少的人 请不要关闭此问题。。。 这类问题可能会受到

您好,我是一名学生,整个夏天我借用了OpenGL编程指南,版本为4.3,这是我的大学在主库中似乎只有的一个版本

我已经了解了一点如何将OpenGL与SFML、SDL和glut结合使用。我借了这本书来帮助我扩展知识

不幸的是,我发现4.3这本书很难理解。我确信我读过一本类似的书(一本旧版本的书,当时它被称为“红皮书”),我发现它更容易理解

我能借到2.1版的书,我相当肯定这是我读过的部分书。到目前为止,我发现它更容易理解。它当然更适合非专家和经验较少的人

请不要关闭此问题。。。 这类问题可能会受到不好的欢迎,并被投票关闭,但请不要这样做-我想得到我的问题的答案。我认为这是一个编程问题,对像我这样的人会有帮助。正如我稍后解释的那样,我希望购买版本2或版本2.1的书,并希望得到一些建议

太长,读不下去了问题从这里开始: 基本上,我想知道OpenGL版本2和版本2.1之间的主要区别是什么。据我所知,有一本书的版本是1.0或类似的版本,然后是2.0、2.1、3或3.5或其他版本。为什么会有一本版本增量为0.1的全新书籍:从2.0版到2.1版。我假设在2.1版本中进行了一些重大更改,或者添加了扩展和功能


问的原因是我非常喜欢这本书(2.1版),我想我应该买它!(疯狂,不是吗?)。所有的OpenGL都有很好的文档,你需要知道的一切都可以在互联网上找到。还请注意,红皮书在互联网上是完全免费的,至少是相关部分(据我所知)。不管怎样,它主要集中在旧的、被贬低的功能上,我认为它不再值得阅读了。 OpenGL3.0引入了弃用机制,因此大多数OpenGL2.x功能都被弃用。这包括客户端内存、固定管道、内置照明计算等。OpenGL2.x确实包括可编程管道功能和服务器端缓冲区,但我仍然强烈建议使用现代OGL。只是因为你不够谨慎。OpenGL 2.x邀请您使用较旧的功能,因为它非常容易使用,但可能是重罪

OpenGL3.x及以上版本的可编程管道、服务器端缓冲区和所有产品可能很难学习。但一旦你能够熟练地使用这些功能,你就会被它的强大力量所震撼。在您提到粒子的评论中,如果您能够使用变换反馈、计算着色器、几何体着色器、实例渲染等,那么使用粒子进行实验会更有趣。事实是,现代OpenGL远远优于旧的OpenGL,它速度更快,而且是为现代硬件设计的

我不知道为什么每个小版本都有一本新书,我想人们对书有一种上瘾。但是OpenGL3.x和更高版本确实值得一本新书。它与以前的API完全不同——至少它的用法是不同的。现在我个人不喜欢书,但那只是我自己。在互联网上学习OpenGL 3.x及更高版本的一个很好的起点是:

第一个链接是了解管道的重要来源,我强烈建议您通读。我真的很喜欢第二个链接,它有一系列关于一系列主题的小教程,它也是了解更复杂算法的一个很好的来源。第三个链接是一个更具初学者风格的教程,以防您陷入困境

此外,这本书包含了您可能希望获得的所有信息和详细文档,无论您将使用什么来源,都要对其进行跟踪:

您还提到要在linux环境上进行实验。确保更新OpenGL驱动程序(实际上在任何操作系统上都要这样做)。现在根据网站,Mesa最多只支持OpenGL 3.1。我建议您使用专有驱动程序,这样您就可以使用GPU提供的所有功能(我个人使用AMD驱动程序在LinuxMint上运行OpenGL4.2),其中包括几何着色器、tesselation和类似功能

最后一点要注意的是,OpenGL ES 2.0+更容易与较新的OpenGL版本进行转换。OpenGL ES 2.0+不使用固定管道,也不使用客户端内存等。一个类似的API在web上运行,即使web已经移动了,您也应该这样做:P


现在出去,开始OGL'in

OpenGL有一个经典版和一个现代版,有非固定的渲染管道,你想学习一下。。。台式机或嵌入式系统可能会与GL有所不同=GL可能是经典版本吗?我希望能够在桌面(linux-ubuntu、debian、fedora)计算机上进行粒子渲染之类的物理实验。2.0还是2.1?都不明显。OpenGL4.3有很多改进,您可以跳过更难的部分,这听起来像是合理的建议。谢谢你详细的回答。我将尝试使用3.x/4.x版本。关于OpenGL的书的情况让我很难过。GL 3.2/3是一个好的开始。它在不同平台上都有很好的支持。我想补充一下,OSX10.7和更高版本似乎支持GL3.2。在windows和linux上,大多数用户将能够获得其硬件支持的最新GL版本。如果我是你