JME(java Monkey Engine),一個非常棒的Java 3D遊戲引擎
一直以來,由於性能等原因,Java並不是3D圖形套用的主流平台,但隨著各種新技術的出現,這種情況有了很大改變。從開始的JIT、Static compilers,到現代的HotSpot技術,使Java程式的運行效率越來越高,目前已經接近於C++程式。此外,通過JNI技術,Java程式可以調用任意第三方庫,包括OpenGL和DirectX等圖形庫。基於JNI技術,Java平台上出現了很多3D圖形API,包括Sun公司在2003年推出了可選的3D圖形包―Java 3D和其它第三方的圖形API。
Java平台下可以選擇的3D圖形API有很多,根據封裝層次可以將其分為以下兩種:
Java bindings to OpenGL
Scene graph APIs
其中屬於Java bindings to OpenGL的有:GL4Java,LWJGL,JOGL等。屬於sence Graph APIs的有:JMonkey Engine(JME)、Java3D等。
JME是一個高性能的3D圖形API,採用LWJGL作為底層支持。它的後續版本將支持JOGL。JME和Java 3D具有類似的場景結構,開發者必須以樹狀方式組織自己的場景。JME有一套很好的最佳化機制,這使得它得運行速度要比Java 3D快很多。JME主要由Render系統、Material系統、GUI系統、Texture和圖片解碼器、檔案解碼器、Scene外掛程式(主要是地形系統)、粒子系統、日誌、物理系統、光照系統等構成。可以說JME是一個功能齊全,性能卓越的3D圖形引擎