.glb を Web 環境無しで表示する方法
.glb
(GLB:バイナリ形式の glTF)をWeb環境無しで表示したい場合、Pythonでできる主な方法は次の2つです:
目次
✅ 方法1:Open3D
を使う(おすすめ)
最も手軽に .glb
をローカルウィンドウに表示できる方法です。
🔧 必要なライブラリ
pip install open3d
📄 サンプルコード
import open3d as o3d # GLBファイルを読み込み mesh = o3d.io.read_triangle_mesh("your_model.glb") # 法線の計算(必要に応じて) mesh.compute_vertex_normals() # ビューアーで表示 o3d.visualization.draw_geometries([mesh])
✅ 方法2:trimesh
+ pyglet
/ scene.show()
GLBを扱える別のライブラリ trimesh
を使う方法。やや多機能で柔軟性あり。
🔧 必要なライブラリ
pip install trimesh pyglet
📄 サンプルコード
import trimesh # GLBの読み込み mesh = trimesh.load("your_model.glb") # ウィンドウ表示(内部で pyglet 使用) mesh.show()
⚠ 初回表示時にウィンドウ表示までやや時間がかかる場合があります。
❌ 難しい方法(避けたい)
pywavefront
は.glb
非対応(.gltf
のみ)Blender
の Python API でも可能だが、Blenderインストール必須で複雑
🧠 まとめ:ローカルで .glb
を表示するなら
方法 | 特徴 | おすすめ度 |
---|---|---|
Open3D | 高速・簡単・ローカル表示可 | ⭐⭐⭐⭐⭐ |
Trimesh | 多機能・GLB対応 | ⭐⭐⭐⭐ |
Blender API | 高機能だがセットアップ大変 | ⭐⭐ |
必要なら .glb
を表示した状態で回転・ズーム・保存などのやり方もサポートできますよ。どこまでやりたいですか?