Advanced Locomotion System V4 – Animation Blueprint Linking

Animation Blueprint Linking

仕様

Animation Blueprint LinkingもUE4.24で追加された機能です。(4.24ではまだベータ版です)

UE4.22までは、アニメーションブループリントのマイブループリントは、EventGraphとAnimGraphは[グラフ]というセクションにひとまとめになっていましたが、UE4.23からはAnimGraphは[Animation Graphs]というセクションに分かれ、新たに[Animation Layers]というセクションが増えました。

UE4.22まではEventGraphとAnimGraphはひとまとめだった

UE4.23以降は新たにAnimation Layersセクションが増えた

Animation Layersはノードネットワークを分割して再利用するというAnimGraph版の関数のようなイメージで、以前はSub Anim Instanceで用意されていた機能の拡張版のようです。ここでは区別するために、Animation Layersで実装されたノードネットワークをレイヤーと呼びます。

Animation Blueprint LinkingはこのAnimation Layersに追加されたレイヤーを関数のように呼び出し使用します。

フォートナイトでの使用例(UE4オフィシャルドキュメントより引用)

これにより、実装作業を分担したりメモリの効率化が見込めるそうです。

実装

関数のように使用すると書きましたが、実装自体はインターフェースの作りに似ており、実際、マイブループリントに直接実装する以外にもAnimation Layer Interfaceアセットとして実装したインターフェースを継承して中身を実装するというやり方でドキュメントには記載されています。

ただ、ALSv4では直接マイブループリントからレイヤーを実装し、関数のように使用しています。

  1. まず、マイブループリントのAnimation Layersの右端の+アイコンをクリックし、レイヤーを追加します。
  2. 関数のように、Inputから入力ポーズを追加することができます。
  3. 呼び出したいAnimGraph上で[右クリック]>[Linked Anim Layer]を選択してノードを追加します。
  4. [詳細]の[Settings]>[Layer]から、先程作成したレイヤーを選択することで使用できるようになります。

参考