Godot EngineでのVRMモデル利用するゲーム開発

VRMをたくさん作ったから、活用方法ないかを調べった、
Godot Engine+専用プラグインでVRMの人物モデルをインポートし、ゲームキャラクターとして使えます。

1. 必要なプラグインと導入手順

  1. GitHub「V-Sekai/godot-vrm」をクローンして、プロジェクトの addons/vrm に配置
  2. 同じく addons/Godot-MToon-Shader を追加(MToonマテリアル対応のため)
  3. プロジェクト設定 → プラグイン → 「VRM」「Godot-MToon-Shader」を有効化
  4. ファイルシステムで .vrm を右クリック → 「インポート」→「VRM」を実行

2. 主なサポート機能

  • VRM 1.0 モデルのインポート・エクスポート対応
  • VRMメタ情報(ライセンス、表示名など)読み込み
  • MToonマテリアル再現(Godot-MToon-Shader必須)
  • BlendShape(表情/Viseme)読み込み
  • ボーン(Skeleton3D/GeneralSkeleton)およびヒューマノイドリギング
  • VRMC_springBone(一部スクリプトで最適化推奨)
  • VRMC_node_constraint(バグ有りのため要検証)

3. ゲームでの活用イメージ

  • インポート後に自動生成されるシーンには
    • MeshInstance3D+マテリアル
    • Skeleton3D(GeneralSkeleton)
    • AnimationPlayer
    • BlendShapeタブ
  • GDScriptやAnimationTreeでアニメーションを制御し、操作キャラとして組み込める
  • 物理挙動(SpringBone)や表情切り替え(BlendShape)は追加スクリプトで拡張可能

4. 注意点とポイント

  • Godot 4.0以降推奨(安定サポート)
  • 一部のVRM拡張仕様は完全対応していないので、自作スクリプトで補う必要あり
  • 既存のアニメーション資産(.animや外部glTF)はAnimationPlayerを介して流用可