Javaで .glb
ファイル(GLTF 2.0のバイナリ形式)を表示するには、以下のいずれかの3Dエンジンやライブラリを使うのが一般的です:
目次
✅ おすすめの方法
1. jMonkeyEngine(Javaの人気3Dゲームエンジン)
jMonkeyEngine
は GLTF/GLB ファイルをネイティブにサポートしています。
✅ 必要な準備
- JDK 8以上
- Gradle または Maven プロジェクト
- jMonkeyEngineの依存関係追加
✅ Gradleでの設定例
dependencies { implementation 'org.jmonkeyengine:jme3-core:3.6.0-stable' implementation 'org.jmonkeyengine:jme3-desktop:3.6.0-stable' implementation 'org.jmonkeyengine:jme3-lwjgl:3.6.0-stable' implementation 'org.jmonkeyengine:jme3-plugins:3.6.0-stable' // GLTF対応 }
✅ GLBファイルを読み込んで表示するコード例
import com.jme3.app.SimpleApplication; import com.jme3.asset.plugins.FileLocator; import com.jme3.scene.Spatial; public class GlbViewer extends SimpleApplication { public static void main(String[] args) { GlbViewer app = new GlbViewer(); app.start(); } @Override public void simpleInitApp() { // ファイルパスのルートを登録 assetManager.registerLocator("models/", FileLocator.class); // GLBファイルを読み込み Spatial glbModel = assetManager.loadModel("model.glb"); rootNode.attachChild(glbModel); } }
🔁 必要なファイル構成例
project-root/ ├── models/ │ └── model.glb └── src/
2. LWJGL + GLTFライブラリを自作で組み込む
もっと低レベルで制御したい場合、LWJGLとGLTFパーサーを組み合わせることも可能ですが、初心者にはおすすめしません。
補足
.gltf
はJSON形式、.glb
はそれをバイナリに圧縮したもの。jMonkeyEngine
の場合、GLTF/GLB読み込み時にマテリアルやアニメーションも読み込めます。
もし「Webビューで表示したい」「Androidで表示したい」「簡単な3Dビューアだけ作りたい」など、もう少し具体的な目的があれば、それに合わせた方法も提案できます!
どう使いたいか教えてくれる?