はい、.fbx
や .obj
に対応しているなら、C#での選択肢や可能性は一気に広がります!
目次
✅ .fbx
/ .obj
対応だと何が広がる?
➕ 対応ライブラリやエンジンが増える
.glb
は比較的新しくて対応ライブラリが限られてますが、.fbx
や .obj
は昔からある定番フォーマットなので、多くのフレームワークやエンジンが標準でサポートしています。
✅ C# で .fbx
/ .obj
を扱える主な選択肢
フレームワーク / ライブラリ | .fbx | .obj | 備考 |
---|---|---|---|
Unity | ◎(標準) | ◎(標準) | FBXはアニメも含めてフルサポート |
Stride (Xenko) | ◎ | ◎ | FBXインポート対応。マテリアルもOK |
Godot (C#) | ◎(FBXは変換必要) | ◎ | OBJは直接、FBXは一度glTF変換推奨 |
AssimpNet | ◎ | ◎ | FBX/OBJ読み込み専用ライブラリ(描画は自作) |
MonoGame + ContentPipeline | ◎(変換要) | ◎(変換要) | .fbx/.obj → .xnb 変換必要 |
OpenTK + AssimpNet | ◎ | ◎ | 読み込んでOpenGLで描画(自由度高) |
🔍 ライブラリ解説
✅ Unity(最も簡単)
.fbx
や.obj
はそのままドラッグ&ドロップで使える.fbx
はアニメーション、ボーン、スキニングまでOK.obj
は静的メッシュ向き(アニメなし)
✅ Stride (Xenko)
.fbx
,.obj
ともにエンジン標準サポート- Unityよりも軽くて、完全にC#ベース
.fbx
のアニメ・ボーン情報も扱える
✅ AssimpNet(読み込み専用ライブラリ)
- C#用の3Dモデルローダー(Open Asset Import Library)
.fbx
,.obj
,.3ds
,.dae
,.gltf
など50種類以上の形式に対応- 描画機能は持っていないので、OpenTKやSharpDXなどで描画する必要あり
✅ Godot (Mono)
.obj
はドラッグ&ドロップで直接使える.fbx
はglTF形式に変換(例:Blender経由)して使うのが一般的- クロスプラットフォームでC#コードから3Dモデル制御可
✅ MonoGame + Content Pipeline
.fbx
,.obj
どちらも.xnb
に変換して使える(コンテンツパイプラインを使用)- 軽量だが3Dの機能はUnityよりかなり制限あり(自前制御が多い)
🎯 結論
あなたがやりたいこと | おすすめ |
---|---|
簡単に表示・操作したい | Unity or Stride |
自作描画エンジン作りたい | OpenTK + AssimpNet |
学習・教育向けに軽く使いたい | MonoGame |
オープンソース&GUI付きがいい | Godot Mono |
💡補足:GLBにこだわらない利点
.fbx
はアニメやスケルトン、ボーンを含められる → ゲームキャラやモーションに最適.obj
は軽量で静的メッシュ表示に最適 → 建物やアイテムなど- 対応エンジンが増える → 表示・変換・操作・アニメーションの自由度がUP!
必要なら、「UnityでFBXのキャラ読み込み+アニメ再生」のコードとか
「OpenTK + AssimpNetでOBJ表示」のサンプルとかも出せますよ!
気になるワークフローやライブラリ、教えてください〜!