VRoid で作成したキャラクターを Mixamo のモーションデータで動かす

ゲーム開発

手順

手順は大まかに以下の通り

  • Unity に UniVRM を用意する
  • Unity に FBX Exporter を用意する
  • VRoidStudio で VRoid を作成する
  • VRoidStudio で VRM をエクスポートする
  • VRM を Unity にもってきて、シーンに配置
  • VRM を FBX でエクスポートする
  • Mixamo に FBX をアップロードする
  • Mixamo からモーションデータをダウンロードする
  • Mixamo のモーションを Unity にもってくる
  • Unity で VRoid にモーションを適用する

Unity の下準備

Unity は 6.3 LTS で行います

まずは こちら を開きます

Unity の Package Manager を開き、+ マークから「Install package from git URL …」で、1つめ、3つめの順でインストールする

この2つのインストールで VRoid のインポートをできるようにします

次に Package Manager で 「Unity Registry」を選択、”fbx” を検索すると「FBX Expoter」が出るので、それをインストール

こちらは FBX を出力するためにインストールします

Blender でも FBX を出せますが、Blender を使わなくても FBX を出力できるので、こちらをインストールします

VRoidStudio でデータを出力する

こちら のサイトから VRoidStudio を PC にインストールします

VRoid Studio を立ち上げ、お好みの VRoid を作成します

保存を忘れないようにしましょう

その後、右上のダウンロードボタンを押し 「VRM エクスポート」を選択

削減系のパラメータをいじり、エクスポートします

データ削減したい場合は何回もこの削減をすると思います

Unity で FBX データを用意する

VRoidStudio から出力した VRM ファイルを Unity の Project に持ってきます

Materials や Vrm の Extract 〜 はやっておくとあとでいじりやすいかも

その後、もってきたデータをシーンに配置します

シーンに配置したもの Hierarchy で右クリック、「Export to FBX …」で FBX を出力します

この FBX は Mixamo でモーションデータを出力する際に必要になります

Mixamo からモーションデータをダウンロードする

Mixamo で目的のモーションを見つけます

UPLOAD CHARACTER で、先程用意した FBX をアップロードします

その後 DOWNLOAD を押し、下の設定でモーションデータをダウンロードします

  • Format:FBX for Unity(.fbx)
  • Skin:With Skin

With Skin でないと VRoid に適用したときにスキンがおかしくなります

モーションデータの設定

  • Rig で Animation Type を 「Humanoid」
  • Animation で Loop Time を有効
  • Root うんぬんを有効化しすべて「Original」にする

VRoid にモーションを適用する

Project で Animator Controller を作成、ダブルクリックで Animator ウィンドウを開き、そこにモーションデータをドラッグ

シーンに配置した VRoid の Animator に、用意した Animator Controller を適用

あとは実行するとアニメーションすると思う

起こりうる問題

モーションを適用すると体が斜める

モーションデータのルートに回転情報が入っており、それが適用されている模様

以下の手順で治す

  • モーションデータを選択、Rig → Configure… で編集画面を開く
  • Hierarchy でルートになっている GameObject を選択する
  • Inspector の Transform で Rotation に 0 を入れる
    • すべて 0 にしても良いし、傾いている角度のみ 0 としてもよい
  • Pose → Enforce T-Pose で適用し Apply する

これで解決するはず

まとめ

VRoid を Unity で動かす手順でした

簡単にできるのかなと思ったけど、意外とつまずくポイントが多いので、慣れてないと難しいかも

もし不明な点があればコメントで質問してください

自分もまだまだ把握しきれていませんが、お力になれるかもしれません

また ゲーム開発 の依頼もお待ちしております

コメントでもよいですし、X にて DM でもご連絡を受け付けております

コメント

タイトルとURLをコピーしました