走る、ジャンプなどのロコモーションを設定しました。
歩く、走る、基本的なロコモーションの設定です。
マーケットプレイスでアニメーションを入手
キャラクターの基本動作は非常に重要度が高いですから、マーケットプレイスでカッコいいアニメーションを購入しました。
Ultimate Ninja Anims:アニメーション – UE マーケットプレイス
6,272円。こういうアニメーションを自作する大変さを考えると安いです。
Idleアニメーションは野球っぽくしたかったので、Mixamoでバッティングの構えのアニメーションをダウンロードしました。
アニメーションの準備
今回は歩く、走る、ジャンプを使います。
Ultimate Ninja Animsの中では、Ninja_Walkの中に8方向の歩きモーション、Ninja_Shuffleの中に8方向の走りモーション、Ninja_Acrobaticの中にジャンプモーションがありました。
これらのアニメーションシーケンスはUE4マネキン用ですから、UE5マネキンにリターゲットします。
アニメーションシーケンスを選択した状態で右クリックしてアニメーションアセットのリターゲティング > アニメーション アセット / ブループリントを複製してリターゲティングを選択。
IK リターゲッタにRTG_UE4Manny_UE5Mannyを指定。
ターゲット スケルタル メッシュにSKM_Quinnを指定。
サフィックスに「_UE5」と入力。
フォルダは/Game/Characters/Mannequins/Animationsを指定。
リターゲットを押す。
EnableRootMotionとForce Root Lockにチェックを入れる
このチェックが入っていないと、実装した時に不自然に滑ります。
IdleポーズはLoopにチェックを入れる
アニメーションブループリントの編集 Idle
プレイヤーキャラクターのアニメーションブループリントを開きます。
私はプレイヤーブループリントにBP_ThirdPersonCharacterのコピーを使っていますから、そこにセットされているアニメーションブループリントはABP_Quinnです。しかし、ABP_Quinnは子ブループリントですから、親であるABP_Mannyを編集します。
Idleアニメーション
アニメーションブループリントのAnimGraphをダブルクリックで開く。
Locomotion ステートマシンの中にダブルクリックで入る。
Idleの中にダブルクリックで入る。
アセットブラウザからベースボールのIdleアニメーションをドラッグ&ドロップで配置。それを「アニメーションポーズを出力」に繋ぐ。
詳細 > 設定 > Loop Animationにチェックを入れておく必要もあります。
これでコンパイルしてテストプレイすると、Idleアニメーションが変わっています。
ブレンドスペースの作成と編集
WalkとShuffleのアニメーションを良い具合にブレンドしてくれるブレンドスペースというものを作成します。
Animationsフォルダで右クリックしてアニメーション > ブレンドスペースを選択。
スケルトンの選択はSK_Mannequinを選択。
名前はBS_WalkShuffleにしました。
ブレンドスペースの編集
BS_WalkShuffleを開く。
NameをDirectionにします。方向という意味です。
Minimum Axis Valueを-180にします。
Maximum Axis Valueを180にします。
0度が正面、90度が右、-90度が左、-180度と180度は同じで後ろ。
Grid Divisionsは8にします。
今回は8方向のアニメーションを使うので8ですが、4方向(前後左右)のアニメーションであれば4になります。
アセット詳細 > Axis Settings > 垂直軸
NameをSpeedにします。
Minimum Axis Valueを100にします。
Maximum Axis Valueを500にします。
ここの入力はMaximumから先に入力する必要があります。Minimum<Maximumですから。
中央下のパネルの上側9個・下側9個にアセットブラウザからドラッグ&ドロップでアニメーションシーケンスを配置します。パネルの意味を理解して配置できるようになる必要があります。
縦軸がSpeedですから、上側9点は全てShuffleのアニメーションシーケンスを配置し、下側9点は全てWalkのアニメーションシーケンスを配置します。
横軸はDirection(方向)であり、45度単位で区切られています。0度が正面、90度が右、-90度が左です。
これを理解していれば、「後ろに走るアニメーションシーケンス」は上側の両角に配置するのがわかります。180度と-180度はまったく同じ方向であり、後ろを意味します。
「斜め右前に歩くアニメーションシーケンス」は、まず「歩く」ですから縦軸は下側(Speed100)になり、斜め右前は45度ですから、中央から1つ右に配置します。
【注意点】上側(500)に配置する時、しっかり上に配置しないで隙間があると、MAXスピード時にWalkのアニメーションが再生されてしまいます。
500にShuffleを配置し、100にWalkを配置しました。300あたりを再生してみるとRunとWalkの中間くらいのアニメーションになっています。
ブレンドスペースとはShuffle(Jog/Run)とWalkのアニメーションを速度や方向によって良い具合にブレンドしてくれるわけです。
アニメーションブループリントの編集
プレイヤーキャラクターのアニメーションブループリントを開く。
左メニューのAnimGraphをダブルクリックで開く。
Locomotion ステートマシンをダブルクリックで開く。
Walk/Runをダブルクリックで開く。
この状態でコンパイルしてテストプレイするとロコモーションが反映されています。
アニメーションシブループリントの編集 Jump
アニメーションブループリントのAnimGraphをダブルクリックで開く。
Main States ステートマシンの中にダブルクリックで入る。
Jumpの中にダブルクリックで入る。
ジャンプの調整
新たに導入したジャンプのアニメーションシーケンスがデフォルトのフワフワしたジャンプの挙動と合っていませんので修正します。
キャラクターブループリントの編集
詳細 > キャラクタームーブメント(基本セッティング) > Gravity Scaleを3にすると落下速度が速くなります。デフォルトは1.75です。
詳細 > キャラクタームーブメント: 跳躍/落下 > Jump Z Velocityを1200にしてジャンプ力を上げます。デフォルトは700.0cm/sです。
詳細 > キャラクタームーブメント: 跳躍/落下 > Air Controlを0にするとジャンプ中の空中移動操作ができなくなります。デフォルトは0.35です。
詳細 > キャラクター > Jump Max Countを2にすると2段ジャンプができます。もちろん3以上の設定もできます。
コンボとロコモーションができた。王道的なジャンルだと無個性の劣化版ゲームになりがちでも、学習用としては教材が多くて学びやすい。#UE #アンリアルエンジン pic.twitter.com/rEms7bvRyH
— ハマーキーUE (@Hummerkey_UE) August 4, 2023
コメント