Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/opengl/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 我应该根据自己的需要选择什么OpenGL版本?_Java_Opengl_Rendering - Fatal编程技术网

Java 我应该根据自己的需要选择什么OpenGL版本?

Java 我应该根据自己的需要选择什么OpenGL版本?,java,opengl,rendering,Java,Opengl,Rendering,我正在使用该库创建一个显示器,显示器上的渲染是由OpenGL完成的。我对OpenGL几乎一无所知,我已经学会了使用1.1版中的一些基本方法,但在我被告知不建议使用该版本的OpenGL(因为1.1是从1997年开始的)之前,我问了一个问题。所以我的主要问题是我应该选择和学习什么OpenGL版本?我正在开发一个2d游戏,我希望这个游戏能在几乎所有的电脑上运行。我需要知道什么版本不是太旧,而且运行良好。 我在浏览互联网,但仍然没有找到答案。。 如果你能提供一些资源,那就太好了 人们之所以说“不要使用旧

我正在使用该库创建一个显示器,显示器上的渲染是由OpenGL完成的。
我对OpenGL几乎一无所知,我已经学会了使用1.1版中的一些基本方法,但在我被告知不建议使用该版本的OpenGL(因为1.1是从1997年开始的)之前,我问了一个问题。所以我的主要问题是我应该选择和学习什么OpenGL版本?我正在开发一个2d游戏,我希望这个游戏能在几乎所有的电脑上运行。我需要知道什么版本不是太旧,而且运行良好。

我在浏览互联网,但仍然没有找到答案。。 如果你能提供一些资源,那就太好了

人们之所以说“不要使用旧的OpenGL版本”,是因为固定孔的函数管道已被弃用,不应该使用,而且速度太慢

这是一个很棒的GoogleDocs电子表格,它包含了大多数OpenGL函数,以及它们是否被弃用等等

请注意,电子表格是由使用OpenGL的人定制的,而不是由制作和开发OpenGL的人创建的

所以我的主要问题是我应该选择和学习什么OpenGL版本?我正在开发一个2d游戏,我希望这个游戏能在几乎所有的电脑上运行。我需要知道什么版本不是太旧,而且运行良好

我会说使用3.x或更高版本。那么,自2008年3.0版发布以来,可能大多数计算机都能运行您的程序

通过使用更新版本的OpenGL,您将能够使用许多东西,如VBOs、VAOs、FBO、着色器等。另外,通过不使用固定的函数管道函数,例如
glBegin()
glEnd()
也将在帧中提供巨大的提升

但是如果你想支持所有的计算机,即使是拥有古代计算机的人。然后我会说最好的方法是实现多种不同的方法。当你要渲染一些东西时,如果计算机支持VAO,就使用它们,如果计算机不支持它们,就不要使用它们,等等

额外的 OpenGL发布日期 以下是不同OpenGL版本的发布日期

  • 1.1-1997年3月4日
  • 1.2-1998年3月16日
  • 1.2.1–1998年10月14日
  • 1.3-2001年8月14日
  • 1.4-2002年7月24日
  • 1.5-2003年7月29日
  • 2.0–2004年9月7日
  • 2.1-2006年7月2日
  • 3.0–2008年8月11日
  • 3.1-2009年3月24日
  • 3.2–2009年8月3日
  • 3.3-2010年3月11日
  • 4.0–2010年3月11日
  • 4.1-2010年7月26日
  • 4.2–2011年8月8日
  • 4.3–2012年8月6日
  • 4.4–2013年7月22日

你对桌面或移动OpenGL感兴趣吗?@ BuriViVoV桌面开发,也许是未来的移动OpenGL。请考虑看,我个人会去最近的版本。对于移动OpenGL ES 2.1。适用于桌面opengl 3.0及以上版本。