Advanced Locomotion System V4 – UpdateGraph

UpdateGraphとは?

UpdateGraphは、”Event Blueprint Update Animation”イベントを他のイベントから切り離したEventGraphです。

どのような更新処理を行っているかを見ていきます。

Only update if character is valid

まずはキャラクターが取得できるかどうかチェックします。

Do Every Frame

アニメーションの更新に使用するパラメータを取得&計算するため、ALS_AnimBPは毎フレーム4つの関数を呼び出します。

Update Character Info関数

この関数の中では必須パラメータ(Essential Values)と、プレイヤーの状態(Current States)をキャラクターブループリントから取得して変数にセットしています。

キャラクターブループリントはALS_Character_BPIというインターフェースを実装する必要があり、そのインターフェース経由でAnimBPにパラメーターを取得します。

キャラクターブループリント側の実装は以下の記事に記載しています。

Update Aiming Values関数

エイム時のパラメータを更新します。自身のゲームでエイムを使用する際は、この実装をベースに改造すると良いかと思います。

Update Layer Values関数

AnimBP側で各アニメーションレイヤーをブレンドする際のウェイト値を更新します。

AnimCurveのパラメータをもとに設定しているようです。(調査中)

Advanced Locomotion System V4 – アニメーションカーブによるブレンド制御

2020年2月4日

Update Foot IK関数

足のIKのパラメータを更新する関数です。

内容は調査中です。

Check Movement Mode

先程のUpdateCharacterInfo関数で取得した変数”Movement State”を使用して、Grounded(地上)、In Air(空中)、Ragdoll(ラグドール状態)のそれぞれ専用の更新処理を行います。