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許可證下獨立的開源專案,它是計算機軟體一個自由的許可證。