Language:

Animation ブループリント

Animation ブループリント は、特殊な ブループリント であり、そのグラフでは、 スケルタルメッシュ のアニメーションを制御します。 グラフは Animation ブループリント エディタ 内で編集されます。ここでは、アニメーションのブレンド、スケルトンのボーンの直接制御、各フレームで使用するスケルタルメッシュの最終的なアニメーション ポーズを定義するロジックのセットアップをすることができます。

Animation ブループリント のサンプルのデモが、セクション 1.2 の アニメーションのコンテンツ サンプル ページにあります。

Animation ブループリントを作成、ナビゲートする

Animation ブループリントがどのように機能するかに進む前に、その作成方法とインターフェースを理解するとよいでしょう。

Animation ブループリントで作業する

Animation ブループリントには、2 つの主要コンポーネントがあります。 この 2 つが連動して、各フレームの最終アニメーションを作成します。具体的に EventGraph は、後で AnimGraph で使用可能な値を更新します。 この値を使用して、ステートマシン、ブレンドスペース、その他のノードを操作し、複数のアニメーション シーケンスやポーズ間のブレンディングを可能にし、動的なアニメーション駆動のエフェクトを起こす通知を 別のシステムへ送信します。

Sub Animation ブループリントのインスタンスで作業する

様々なキャラクター用に Animation ブループリントを作成する場合、キャラクター間でロジックを共有するのは一般的です。 例えば、あるキャラクターに物理アニメーションまたは AnimDynamics を適用していて、別のキャラクターに適用するとします。 Sub Anim Instance ノードを使って別の Animation ブループリントへの参照を作成して、別の Animation ブループリント内のすべてのロジックにアクセスしてそれらを含めることができます。

このやり方で大きな Animation ブループリントを別個の小さな Animation ブループリントに分けて、これを他の Animation ブループリント内に含めることができます。 例えば、厳密に "Locomotion" のための Animation ブループリントをひとつと、物理ベースのアニメーションを処理する Sub Anim Instance を持つことができます。 Sub Animation ブループリントのメンバー変数は、親の Animation ブループリント内の入力ピンとして公開することもできます。これにより、Sub-Graph Input ノードは、In Poses を Sub Anim Instance に公開することができます (以下参照)。

SubAnimInstance.png

Sub Anim Instance で作業する場合、外部の Animation ブループリントと同じスケルトンを使用しなければなりません。

Sub Animation Blueprint インスタンスをセットアップしてキャラクターの動きに影響を与えるには、 SubAnim インスタンスを使用する をご覧ください。

子 Animation ブループリントで作業する

キャラクターと Animation ブループリントを作成し、設定する場合、類似キャラクターが複数存在するが、異なるステートで全く違うアニメーションを持つことがあるかもしれません。 こうしたキャラクターそれぞれに Animation ブループリントを作成するのではなく、既存の Animation ブループリントの 子 Animation ブループリント を使用して、置換したい Animation アセットをオーバーライドすることができます。 子 Animation ブループリントはその親から何もかもを継承しますが、Asset Override Editor (アセット オーバーライド エディタ) を使用してどのアニメーションをオーバーライドするかを指定することもできます。

例えば、ひとつは人間でもうひとつはオオカミ人間という 2 種類の人間の形をしたキャラクターがあるとします。両方とも歩く、走る、ジャンプ、這うことができます。 しかし、その動きは全く異なる可能性があります。こうした動きの間での移動のロジックは同じですが、動き自体は異なります。 2 種類の Animation ブループリントを作成しても問題ありませんが、時間を短縮するために子 Animation ブループリントを作成してどのアニメーションをオーバーライドするかを選択することができます。

子 Animation ブループリントを作成し、オーバーライドする例については、 Animation ブループリントのオーバーライド をご覧ください。

Post Process Animation ブループリントを割り当てる

Animation ブループリントは、Skeletal Mesh アセットの詳細 パネルから Post Process Anim ブループリント として直接スケルタルメッシュに割り当てることができます。 これにより、Animation ブループリントをスケルタルメッシュに割り当てて、常にこれを、Skeletal Mesh コンポーネントの Main Anim Instance として割り当てられている Animation ブループリントの後に実行させることができます。 Post Process Anim ブループリントをスケルタルメッシュに割り当てることで、AnimDynamics、 Skeletal Controls、またはその他の Anim ブループリントのロジックを作成して他の Animation ブループリントにコピーする必要なく、これらを作成することができます。

ExamplePostProcess.png

詳細は、Skeletal Mesh アセットの詳細 の Post Process Animation ブループリント セクションをご覧ください。

Animation ブループリントのライブ編集

現在この機能は実験的なものであり、期待どおりに機能しない場合があります。

エディタで再生中に、Animation ブループリントをリアルタイムに編集して再コンパイルすることができます。一度停止してから変更を適用する必要がなくなるため、イタレーションにかかる時間を短縮します。

上の動画では、エディタでプレイ (PIE) セッション中にキャラクターのステートマシンに変更を加えています。

ライブ編集を有効にするには、[General] の [Experimental] セクションの [Tools][Enable Live Recompilation Of Animation Blueprints] オプションを有効にします。

LiveEditing.png

Animation ブループリント内の Debug Filter を使ってデバッグする Animation ブループリントのインスタンスを定義する必要があります。

DebugOption.png

デバッグする Animation ブループリントのインスタンスを選択したら、キャラクターのアニメーション ステートが何であれレベルから Animation ブループリント エディタに反映されます。