我应该学习哪个版本的OpenGL?

Xpl*_*ane 12 opengl

可能重复:
要使用哪个版本的OpenGL?

我一直想学习3D图形语言已经有一段时间了,我终于决定学习OpenGL了.但是,我在Mac上工作,官方这个最高版本的OpenGL for mac是2.1,但它可以通过我已经完成的测试非正式地支持3.3.

我想开发可以在多个平台上运行的应用程序,但哪个版本最适合学习?

jan*_*neb 11

可移植性和仍在学习"现代OpenGL方式"之间的良好折衷,大致是"OpenGL ES的OpenGL ES 2.0子集".这使您可以移植

  • 正如你所提到的,OSX

  • Windows,显然

  • 带有开源驱动程序的Linux(对于更高的OpenGL版本和更好的性能,你需要你可能更喜欢的专有驱动器,但有些人喜欢避免这些)

  • iOS和Android等智能手机平台.

OpenGL 1.x更具可移植性(例如较旧的iOS和Android版本仅支持OpenGL ES 1.x)但经典的固定功能编程模型与基于缓冲对象和着色器的现代固定功能编程模型略有不同,并且使用立即模式渲染大量顶点时容易导致性能问题.所以可能不值得,恕我直言.


kos*_*tja -1

如果您的目标是最大程度的互操作性,我宁愿看看WebGL,或者它的近亲OpenGL ES。OpenGL ES 的概念(至少在 2.0 版本中)与 OpenGL 4 的概念非常接近(基于缓冲区的数据传输、通用着色器等)。

我认为通过学习 2.1,你会学到一些过时的概念,你很快就必须重新学习,比如直接模式,或者更确切地说,在更高版本中被删减的整个固定功能管道。

您也可以安全地开始学习 3.x,因为您将了解当前的概念和功能。不用担心“官方支持”的版本。