はい、.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表示」のサンプルとかも出せますよ!
気になるワークフローやライブラリ、教えてください〜!
