はじめに
VRMアバターに豊富なアニメーションをつけたいけど、VRMAファイルが少ない...
このような悩みを抱えている方も多いのではないでしょうか?
Mixamoには数千種類の高品質なアニメーションがありますが、FBX形式でしかダウンロードできません。一方、VRMアバターで使うにはVRMA形式が必要です。
この記事では、私が主にClaude Codeを用いて開発したFBXアニメーションをVRMA形式に簡単に変換するツールの使用方法をご紹介します。
↓ Miximoからダウンロードしたアニメーションを再生する様子 ↓
⚠️ 注意事項
ここで作成されるVRMAファイルは、VRoid Studioで再生できないことを確認しております。
Three.js VRMを用いた再生を前提としており、Vroid Studioなど一部のソフトウェアでは対応していない可能性があります。ご注意ください。
Three.js VRMを用いたサンプルコードはこちらのリポジトリに用意しています。
※本記事やツールの使用により発生した不具合・損害について、筆者は責任を負いかねます。ご利用は自己責任でお願いいたします。
fbx2vrma-converterのセットアップ
1. ツールのインストール
以下を実行してfbx2vrma-converterをダウンロードしてください:
git clone https://github.com/tk256ailab/fbx2vrma-converter
cd fbx-to-vrma-converter
npm install
2. FBX2glTFバイナリの配置
Meta社が開発したFBX2glTFを使用します:
# macOS用バイナリをダウンロード
curl -L -o FBX2glTF-darwin-x64 \
https://github.com/facebookincubator/FBX2glTF/releases/download/v0.9.7/FBX2glTF-darwin-x64
# 実行権限を付与
chmod +x FBX2glTF-darwin-x64
環境に合わせてFBX2glTFをダウンロードしてください。
使用方法
以下のコマンドを実行するだけでVRMA形式への変換が完了します!
# 単一ファイルの変換
node fbx2vrma-converter.js -i path-to-your-fbx-file.fbx -o path-to-your-vrma-file.vrma
# フレームレート指定(デフォルトは30)
node fbx2vrma-converter.js -i path-to-your-fbx-file.fbx -o path-to-your-vrma-file.vrma --framerate 60
# 複数ファイルの一括変換
for file in animations/*.fbx; do
filename=$(basename "$file" .fbx)
node fbx2vrma-converter.js -i "$file" -o "output/${filename}.vrma"
done
正常に実行されない時の対処法
最も簡単な方法は、Claude Codeに変換処理を依頼することだと思います。
Claude Codeにお願いすれば、手作業でやらずとも自然言語の指示でまとめて複数のFBXファイルを変換してくれます。
Claudeの有料プランを利用していない方は、以下の点をご確認ください。
1. ディレクトリ構成
以下のような構成になっていることを確認してください。
fbx2vrma-converter
├── FBX2glTF-darwin-x64
├── fbx2vrma-converter.js
├── LICENSE
├── package.json
├── README-jp.md
├── README.md
├── setup.bat
└── setup.sh
2. FBX2glTFが正しくダウンロードできているか
おそらくこれが原因でエラーが起こる場合が多いと思います。
ご使用のOSやFBX2glTFのバージョンを確認してください。
3. 実行権限の付与(MacOSの場合)
以下のコマンドで実行権限を付与してください。
chmod +x FBX2glTF-darwin-x64