🔖

[UE5] 新しくなったアニメーションリターゲット

2022/05/26に公開

1.概要

執筆時バージョン UnrealEngine5.01

UE5においてキャラクターのアニメーションリターゲット機能が追加されましたので、新しいアニメーションリターゲット機能について解説しようと思います。

今回の解説で実施することは以下の通りです

  • ボーン構造が同じスケルトン同士でのリターゲット
  • ボーン構造が異なるスケルトン同士のリターゲット

新しいリターゲット機能を用いて、グレイマンのアニメーションを流用する方法について解説します。

2.UE5における新機能

UE4のリターゲット機能が廃止され、新たに二つの機能が追加されました。

Compatible SkeltonIKRigRetargeterの二つです。

3.Compatible Skelton

構造が同じスケルトンの場合使用可能なリターゲット機能

Skeltonアセットが異なっていてもSkeltonの構造に互換性があるため、アニメーションの共有が可能です

互換性の例

使用方法

  1. 互換性を持たせたいSkeltonアセットを選択

  2. SkeltonアセットのWindow->詳細アセット内のCompatibleSkeltonsに共有したいアニメーションに対応するSkeltonアセットを設定

  3. 動作確認

レベル内に適応したSkeltalMeshと適応元のSkeltalMeshの二つを並べ、アニメーションを再生します

4.IKRig Retargeter

構造が違うスケルトンに対してIKRigを使うリターゲット機能
CompatibleSkeltonとは違い、アニメーションの共有は不可能ですが
Skeletonやボーン名、構造が違っていてもアニメーションを流量出来るというメリットがあります。
スケルトン構造の違うスケルタルメッシュを使用するためUE4のElemetalデモよりLava Knightとmannequinを使用してリターゲットの解説を行います。

使用方法

1.IKRigの作成

コンテンツブラウザ上で右クリック アニメーション->IKRigを選択します

IKRigの名称を『Lava_Knight_IKRig』とします。

IKRigのSkeltalMeshを選択します。今回はLava_Knightを使用します。

IKRigの編集IKRigのセットアップではRetargetChainというリターゲット用のものを作ります。

はじめにリターゲット用のルートボーンを指定します。

続いてChainを設定します。Chainの設定手順については1. 新しいチェーンを追加する ボタンを押す2. チェーン名を入力します3. 開始ボーンと終了ボーンを選択するこの作業をリターゲットが必要な箇所の分繰り返し実施します。今回は以下の画像のように設定しました。

続いてソルバよりIKソルバをリグに追加します
フルボディIKを追加します。

選択されているソルバにルートボーンを設定します。ここで設定するボーンはリターゲットルートと同じです

続いてフルボディIKの目標を設定します。ここではbMF_Hand_L,bMF_Hand_RにIK目標の新規作成を行います。
これでIKRigの設定は完了です。

2.IKRig Retargeterの作成

IKRigRetargeterの作成 コンテンツブラウザにてIKRigRetargeterを作成します。
アニメーションをコピーするRigではリターゲット元のIKRig、IK_UE4_mannequinを選択してください

TargetIKRig Assetに作成したIKRigを選択します

3. アニメーションブループリントの作成

アニメーションブループリントの作成コンテンツブラウザよりアニメーションブループリントを作成します名前は『Lava_Knight_ABP』に設定します。

AnimGraphにはメッシュからポーズをリターゲットのノードを選択し、出力ポーズへ伸ばします。

4. Characterクラスの設定

Characterクラスのセットアップキャラクタークラスは『ThirdPersonCharacter』を使用します。ベースとなるSkeletalMeshの子にリターゲット先のSkeletalMeshをを設定します。

先ほど作成したアニメーションブループリントを選択します

SourceのSkeltalMeshの最適化設定を以下のように変更します。

  1. 動作確認

Discussion