シーケンサー内で割り当てられたアニメーションを、キャラクターのアニメーション ブループリントで定義されたアニメーションとブレンドする場合、シーケンサーのアニメーション トラックの スロット ノードと [Weight] プロパティを使用してそれを行うことができます。
この例では、アニメーション ブループリントからアイドル ポーズを取得し、シーケンサーで定義された実行中のアニメーションにブレンドします。
手順
この操作ガイドでは、 ブループリントのサードパーソン テンプレート プロジェクトを使用しています。
-
「Content/Mannequin/Character/Mesh」 フォルダで、 「SK_Mannequin」 を右クリックし、 [Create (作成する)] で [Anim Blueprint (Anim ブループリント)] を選択します。
アニメーション ブループリントに任意の名前を付けて、同フォルダに保存します。
-
Anim ブループリント 内で、 ThirdPersonIdle をドラッグして スロット (Slot) ノードに接続し、 最終アニメーションポーズ (Final Animation Pose) ノードに接続します。
スロット ノードにはデフォルトで DefaultSlot という名前が付けられており、これは、このガイドの後半、レベル シーケンス内で参照する名前となります。
-
Anim ブループリント をレベルにドラッグし、メイン ツールバーから [Cinematics (シネマティックス)] を選択し、 [Add Level Sequence] を選択します。
レベル シーケンスに任意の名前を付け、同フォルダに保存します。
-
Anim ブループリント キャラクターをシーケンスに追加し、 ThirdPersonRun アニメーションを追加 / ループしてシーケンスを埋めます。
-
アニメーション トラックを展開し、 [Weight] の値を 「0.0」 に変更して、シーケンスにキーを追加します。
[Weight] を「0.0」に設定すると、その値を増やさない限りはこのアニメーションのいかなる部分も使用しないようにできます。
-
フレーム 75 で値が 「1.0」 の [Weight] のキーと、フレーム 150 で値が 「0.0」 の別のキーを追加します。
これは、「0.0」から「(アニメーションの効果が完全になる) 1.0」までブレンドした後、「0.0」に戻ります。
-
ThirdPersonRun トラックを右クリックし、 [Properties (プロパティ)] では、 [Slot Name] と追加した 3 つの キー に注目してください。
[Slot Name] は、アニメーション ブループリント内に追加された スロット ノードを参照する名前となっています。シーケンサーが参照しているスロットを認識し、[Weight] 値を渡すために、これらの名前が一致している必要があります。
-
レベル シーケンスを選択し、 [Details (詳細)] パネルで [Auto Play (自動プレイ)] を有効にして、 [Loop (ループ)] を 「Loop Indefinitely (無制限にループ)」 に設定します。
-
メイン ツールバーから、エディタでの [Play (再生)] を選択します。
最終結果
エディタで再生すると、キャラクターはアイドル状態になり (アニメーション ブループリント内でのステート)、レベル シーケンス内で割り当てた (実行中の) アニメーションにブレンドされ、その後アイドル状態に戻ります。
この例では、アイドル アニメーションを最終アニメーションポーズとして使用していますが、この方法を使用すると、ステート マシン全体を生成して、いくつかの要因に基づいてアニメーション ブループリント内に最終アニメーションポーズを生成し、レベル シーケンス内で定義されたアニメーションにブレンドすることもできます。
例えば、NPC にはそれらのポーズを制御するロジックを定義でき、プレイヤーはその NPC に近づいてカットシーンをトリガーし、シーケンサー内で定義されたアニメーションでアニメーション ロジックをオーバーライドできます。