ヒューマノイドのモーションからなるAnimation Clipを VRM Animation (.vrma) に変換するプロジェクトです。
※この方法で変換した.vrmaファイルには何かしらの形でモデルの骨格情報が埋め込まれます。このことに関連して、とくに.vrmaファイルの再配布を検討している場合、このREADMEを必ず最後まで読んで下さい。
Sample Project to convert AnimationClip asset to VRM Animation (.vrma) in Unity.
*The document below is in Japanese, except Notice about License section. If you want to redistribute .vrma file, you also MUST understand what is written in Notice about VRMA file redistribution section in addition to the license section.
- Projectを丸ごと使う場合:
- このレポジトリ自体をcloneし、プロジェクトとして開く
- 既存のプロジェクトに変換用の処理を導入する場合:
- 使用中のプロジェクトにUniVRM 0.115.0を導入
- Releasesページで、unitypackageをダウンロードして導入するか、またはReleaseページの記述に従って
Packages/manifest.jsonに下記のような参照を設定
"com.baxter.animation-clip-to-vrma": "https://github.com/malaybaku/AnimationClipToVrmaSample.git?path=/Assets/AnimationClipToVrma/Package#x.x.x",
- Humanoid向けにセットアップされたAnimationClip
- (変換方法2でのみ必要) AnimationClipの再生に用いる人型アバター
以下のことにも留意してください。
- AnimationClipは単独のファイル、またはFBXファイル等の一部として含まれるデータのいずれかの形で準備します。
- AnimationClipの再生に用いる人型アバターがVRMの場合のみ動作確認していますが、VRM以外のモデルでも動作する想定です。
- プロジェクトをcloneした場合、AnimationClipとアバター双方のサンプルを同梱しています。
- 同梱しているアバターはVRoidのモデルであるため、後述のライセンスも参照下さい。
プロジェクトビュー上でAnimationClipアセットを右クリックしてVRM/Convert to VRM Animationを実行することで、モーションを変換した.vrmaファイルを出力します。
この方法ではVRoidのサンプルモデル骨格をリファレンスとした.vrmaが出力されます。
この出力で得られた.vrmaの見た目がとくに問題ない場合、簡単な手順です。
メニューバーからVRM/VRM Animation Exporterを選択してVRM Animation Exporterウィンドウを表示します。
表示後、次のように指定します。
Avatar: Tポーズになっているアバターのprefabで、Animatorコンポーネントを含むものAnimation: 変換したいAnimationClip
その後、Exportボタンを選択することで .vrma ファイルを出力します。
この手順ではVRM Animationにおいてリファレンスとなるアバターの骨格を指定できます。
.vrma の生成と適用に共通のアバターを指定してモーションの再現度を高めたい場合、この手順を使用します。
※VRoid Hubの撮影ブース機能など、ウェブ上で .vrma ファイルが再生出来る方法も併用できます。この節では、Unity Editorのみで確認する方法の例を紹介しています。
VRM Animationの適用対象にするアバターのVRMを用意し、UniVRM 0.115.0のサンプルパッケージを導入します。
- リリース: https://github.com/vrm-c/UniVRM/releases/tag/v0.115.0
- unitypackage: https://github.com/vrm-c/UniVRM/releases/download/v0.115.0/VRM_Samples-0.115.0_7e05.unitypackage
*本レポジトリでは上記パッケージに含まれるVRM10_Samplesフォルダをgitignoreの対象としています。
パッケージの導入後、VRM10_Samples/SimpleVrma/SimpleVrmaシーンを開いて実行し、アバターと.vrmaファイルを読み込んで動作を確認します。
この手順では.vrmaファイルに埋め込まれたアバター骨格に基づくモデルも表示されますが、これはBoxManチェックをオフにすることで非表示になります。
.vrma ファイル内には、アニメーションの再生を実行したモデルのHumanoidボーンの骨格情報が埋め込まれます。
このことに基づき、とくにVRM Animationファイルの再配布時は次のことに留意してください。
VRM Animation Exporterウィンドウに指定するアバターモデルについて、モデルの再配布が許可され、かつクレジット表記が不要であるようなモデルを用いることを検討して下さい。.vrmaファイルの出力時にどのモデルを使用したかについて記録を取っておくことを検討して下さい。
ただし、この注記は本レポジトリ自体のライセンスではありません。
-
Assets/Model_VRoidSampleAフォルダ内のファイルはVRMファイル自体のライセンスに従います。- VRMの取得元: AvatarSample_A
-
Assets/AnimationClipToVrma/Scripts/Editor/AssetCommandsフォルダ内のコードは上記モデルの骨格情報に相当する値をハードコードしているため、この値をそのまま使う場合も上記モデルのライセンスに沿ってご使用下さい。- この注意書きは
変換方法1: AnimationClipの右クリックから変換の方法を使う場合に関するものです。 VRM Animation Exporterウィンドウを使って.vrmaを生成する場合、この数値は使用されません。
- この注意書きは
-
上記を除くリソースのライセンスは
LICENSEファイルに従います。 -
Model data in
Assets/Model_VRoidSampleAhas own license based on VRM data format.- Model Source: AvatarSample_A
-
The scripts in
Assets/AnimationClipToVrma/Scripts/Editor/AssetCommandscontain the hard-coded bone poses data of the model above.- This note is about when you create
.vrmafile by the way in変換方法1: AnimationClipの右クリックから変換section. - When you use
VRM Animation Exporterwindow, the convert process does not use those scripts.
- This note is about when you create
-
Other resources in the repository is licensed according to
LICENSEfile.
変換方法1: AnimationClipの右クリックから変換で参照している骨格情報を他のアバターのものに書き換えるには次のようにします。
- このプロジェクトをcloneします。
- 書き換えに使いたいアバターのprefabをプロジェクトビュー上で右クリックし、
VRM/Util/Export Bone Pose Scriptを実行します。- この操作によって、デスクトップフォルダに
ReferenceHumanoid.csファイルが保存されます。
- この操作によって、デスクトップフォルダに
- 生成されたファイルの内容を全てコピーし、このプロジェクト上にある
ReferenceHumanoid.csにペーストして内容を差し替えます。


