はじめに
AnimGraphにおける各ノードのON/OFFをノードのAlphaで制御している方はそれなりに多いかと思います。
この方法は非常に簡単で便利なのですが、Alphaに0, 1で値を渡すとON/OFFの切り替わりがバレバレになってしまいます。そのため、EventGraph側でAlphaの値を0, 0.1, 0.2 ... 1 といった感じで滑らかに変化させたり、Blend用の各ノードを併用したりして切り替わりが分からないようにする必要があります。
めんどくさいですね!!!
処理的にも無駄な感じがプンプンします!
そんなときに便利なのが今日ご紹介するAlpha Scale Bias Clampです。これを使うことで上述のような対応を入れなくても、以下のように自動的にスムーズに切り替え・ブレンド処理を行ってくれます。
なお、この機能はUE4.25, UE4.26, UE5早期アクセスで動作することを確認済みです。
Alpha Scale Bias Clamp の使い方
使い方は非常に簡単で、AnimNodeの詳細パネルの下の方にあるInterp Resultを有効にするだけです。これにより、Alphaに渡す値が変化したときに補間を行ってくれます。言い換えると「EventGraph側でAlphaの値を0, 0.1, 0.2 ... 1 といった感じで滑らかに変化」をAnimNode側でやってくれます。
更に、Interp Speed Increasing(Decreasing)から補間の速度を変更することも可能です。
補間処理だけでなく、入力値に対してScale, Biasを追加したり、Alpha Scale Bias ClampではMap Changeにより入力値を指定の範囲に変換したり、Clamp ResultによりAlphaの上限・下限値を設定することもできます。
これらの処理をEventGraph側でやるのは面倒な上にGameThreadで実行することになるのでパフォーマンスに影響してしまいます。ですので、もし単純な補間・ブレンドで問題ない場合は是非この機能を活用してみてください!
参考
以下の動画にて紹介されていたTipsが非常に有用だったので記事にしてみました
Motion Warping and Full-Body IK | Inside Unreal (1:32:00あたりから)
https://youtu.be/SM_AR-oZ-1k?t=5527
おしまい