ぼっちプログラマのメモ

UE4とかVRとかについて書いたり書かなかったり。

SK_Mannequin(グレイマン)のアニメーションをT-Poseのモデルに「いい感じに」リターゲットする方法について(T-Poseアニメーション配布)

はじめに

UE4にはスケルトン(ボーン構造)が異なっていてもアニメーションを流用することができる「アニメーションリターゲット」という機能があります(スケルトンが同じ場合でもアニメーションリターゲットといいますが、今回触れるのはスケルトンが異なる場合のアニメーションリターゲットです)。
api.unrealengine.com

しかし、上記のページでも説明されている通り、ベースポーズが異なるとアニメーションが破綻してしまします。
f:id:pafuhana1213:20190429191008p:plain
f:id:pafuhana1213:20190429190931p:plain

友情出演:千駄ヶ谷 渋ちゃん
hub.vroid.com

VRMインポートで使用したライブラリ
github.com


ベースポーズをエディタ上で手動でT-Poseにすることで緩和することができますが…すごく面倒です。そこで、事前に用意したT-Poseのアニメーションをベースポーズにします。

T-Poseのアニメーションファイルはこちら(完全に自由に利用可)。SK_Mannequinのスケルトンをインポート時に指定してください。
drive.google.com
f:id:pafuhana1213:20190429192832p:plain

T-Poseのポーズアセットをベースポーズに

ベースポーズにはアニメーションシーケンスアセットを直接指定することはできず、ポーズアセットにする必要があります。そのため、以下のページを参考に、T-Poseのアニメーションシーケンスアセットをポーズアセットにします。
api.unrealengine.com

作成後、SK_Mannequinのスケルトンを開き、Retarget ManagerタブのModify PoseボタンからT-Poseアセットをベースポーズにします。
f:id:pafuhana1213:20190429195110p:plain
f:id:pafuhana1213:20190429195422p:plain
f:id:pafuhana1213:20190429195450p:plain

設定が完了すると、Retarget ManagerタブのView Poseボタンを押すとSK_Mannequinが以下の画像のようにT-Poseになります。
f:id:pafuhana1213:20190429195620p:plain

ベースポーズをT-Poseに変更できたので、以下のようにT-Poseがベースポーズのモデルに「いい感じに」リターゲットできるようになります。
f:id:pafuhana1213:20190429195752p:plain
f:id:pafuhana1213:20190429200008p:plain

もしベースポーズを元々のAポーズ(っぽい)に戻したい場合は、Modify Poseボタンを押したあとにあるResetから可能です。
f:id:pafuhana1213:20190429200101p:plain

おわり