JOGL教程


本章介紹了OpenGL,Java OpenGL綁定(GL4java,LWJGL,JOGL)和JOGL比其他的OpenGL的優點。

Java支持OpenGL(JOGL)是近期在Java OpenGL圖形API結合。它是一個包裝庫,它可以訪問OpenGL API,並且它被設計來創建Java編碼的2D和3D圖形應用程序。 JOGL是前麻省理工學院的研究生肯·拉塞爾和克里斯·克萊恩最初開發的一個開源庫。後來發佈到Sun Microsystems,現在它是Java圖形和音頻處理(JOGAMP)。用於各種操作系統,如Windows,Solaris和Mac OS X和Linux(基於x86)JOGL功能。

OpenGL是什麼?

OpenGL代表開放圖形庫,用來創建2D和3D圖形的集合。在OpenGL中,可以創建一個使用非常基本的圖元,如點,線,多邊形,位圖和圖像複雜的三維形狀。

下面是OpenGL的幾個特點:

  • 它可以在多個平臺上工作。

  • 它有幾種語言,如C ++,Python綁定等。

  • 它可以呈現2D和3D矢量圖形。

  • 它與圖形處理單元(GPU)實現快速,高品質的渲染。 (渲染是指創建從一個二維或三維模型的圖像的過程。)

  • 它是用於編寫3D圖形應用程序的行業標準API。例如,遊戲,屏幕保護程序等。

  • 它包含約150個命令,程序員可以使用指定的對象和操作來開發應用程序。

  • 它包含了OpenGL實用庫(GLU),提供各種建模功能,如二次曲面和NURBS曲線。 GLU是OpenGL的一個標準組件。

  • OpenGL的設計重點是效率,效益和實現使用多語言在多個平臺。保持一個OpenGL API的簡單框架,不包括窗口的任務。因此,OpenGL依賴於其他編程語言對加窗的任務。

Java綁定OpenGL API

它是一個Java規範請求(JSR)的API規範,它允許使用OpenGL在Java平臺上。

產品規格 詳細
JSR 231 Java綁定包支持Java SE平臺。
JSR 239 Java綁定包支持Java ME平臺。

在Java中有各種OpenGL的綁定。他們是:

GL4java

這是被稱爲OpenGL的Java技術。它鏈接OpenGL1.3和幾乎所有的供應商擴展。此外,它可以用於抽象窗口工具包(AWT)和擺動。它是一個遊戲聚焦OpenGL結合,這是一個顯示全屏幕應用程序的單個窗口。

LWJGL

  • 輕量級的Java遊戲庫(LWJGL),使用OpenGL1.5,並結合Java最新版本。

  • 它可以使用JSE1.4的全屏功能。但它對於AWT/Swings的支持有限。

  • 它適用於重量輕的設備,如移動電話,嵌入式設備等。

JOGL

  • JOGL只專注於2D和3D渲染。處理聲音和輸入輸出的接口不包括在JOGL。

  • 它包括圖形工具庫(GLU),GL實用工具包(GLUT),和自身API-native窗口工具包(NEWT)。

爲什麼要用JOGL?

  • 它提供了完全訪問的OpenGL API(版本1.0,4.3,ES1,ES2 ES3),以及幾乎所有的供應商擴展。因此,在OpenGL中的所有功能都包含在JOGL。

  • JOGL集成了AWT,Swing和標準窗口小部件工具箱(SWT)。它也包括它自己的本機窗口工具包(NEWT)。因此,它提供窗口的完整支持。

JOGL歷史

  • 1992 - Silicon Graphics公司發佈了第一個OpenGL的規範。

  • 2003 - Java.net網站推出的新功能和JOGL發表首次在同一網站上。

  • 2010 – 自2010年以來,它一直在BSD許可證下獨立的開源項目,它是計算機軟件一個自由的許可證。