しゃがみアニメーションのやり方!
~アニメーションをプロジェクトに追加~
作成したプロジェクトに
「アニメーションスターターパック」を追加します。
~アニメーションリターゲット~
コンテンツ内にある
「Mannequin」を開き
「Character」→「Mesh」と開いていきます。
↓
「Mesh」ファイル内にある
「UE4_Mannequin_Skeleton」を開きます。
画面上部ツールバーの
「リターゲットマネージャー」をクリック。
画面左にリターゲットマネージャーが表示されます。
「ヒューマノイドリグを選択」をクリック。
最後に保存してください。
コンテンツフォルダに戻り
「AnimStarterPack」ファイルを開きます。
「UE4_Mannequin」→「Mesh」の順で開いていき
「UE4_Mannequin_Skeleton」を開きます。
そして、先ほどの手順を行います。
「リターゲットマネージャー」を開き
「ヒューマノイドリグを選択」し
最後に保存
です。
コンテンツフォルダに戻り
「AnimStarterPack」→「UE4_Mannequin」→「Mesh」内にある
「UE4_Mannequin_Skeleton」を右クリックします。
そして、「別のスケルトンへリターゲットする」をクリック。
「ThirdpersonCharacter」のスケルトン
「UE4_Mannequin_Skeleton」を選択し
「リターゲット」します。
これで、「ThirdpersonCharacter」で
「AnimStarterPack」のアニメーションを使用することが出来ました。
~CharacterMovementの編集~
「ThirdPersonCharacter」を開きます。
「CharacterMovement」コンポーネントを選択し
画面左の詳細パネルにある
「NavMovement」項目にある
「▷MovementCapabilities」の「▷」マークをクリックします。
すると、各項目が展開されます。
「CanCrouch」にチェックをつけましょう。
これで、Crouch(しゃがみ)が可能になりました。
~BPインターフェースの作成~
「Anim_BP_Interface」という名の
BPインターフェースを作成します。
アニメーションBPで使うインターフェースなので
こういう名前にしました。
作成した「Anim_BP_Interface」を開き
新規関数「SetPlayer_CrouchingBPI」を作成します。
引数(インプット)は以下の通り
これでインターフェースの作成は終了です。
~インターフェースの実装~
「ThirdPersonCharacter」を開き
作成したインターフェース
「Anim_BP_Interface」を追加します。
イベントグラフに、以下の処理を作成します。
「Qキー」を押した時
Crouch(しゃがみ)をし、アニメーションBPのイベントを呼び出す。
引数Crouchingは「True」
もう一度「Qキー」押した時
UnCrouch(しゃがまない)をし、 アニメーションBPのイベントを呼び出す。
引数は「False」
これで「ThirdPersonCharacter」の処理は完了です。
~アニメーションBPの編集~
「ThirdPerson_AnimBP」を開きます。
作成したインターフェース
「Anim_BP_Interface」を追加します。
イベントグラフに以下の処理を作成します。
「ThirdpersonCharacter」から受け取った値を
変数に格納しています。
~アニメーションの実装~
アニムグラフに
「Crouch」という名のステートを追加します。
作成した「Crouch」ステートを開き
「Crouch_Idle_Rifle_Hip」アニメーションを追加します。
~トランディションルールの作成~
「Idle/Run」ステートと
「Crouch」ステートを繋いで
この2つのアニメーションを遷移させる為のルールを作ります。
「Idle/Run」→「Crouch」のトランディションルール
「Crouch」→「Idle/Run」のトランディションルール
最後にコンパイルして完了です。
実際にプレイしてみましょう!
しっかりしゃがみアニメーションが出来ていましたね!
ちなみに・・・
しゃがんだり立ち上がったりするとき
ちょっとカメラが速く動きすぎて気になるかもしれません。
そういう時は
「ThirdpersonCharacter」の
「CameraBoom」コンポーネントの詳細パネルにある
「EnableCameraLag」にチェックをつけましょう。
これでカメラがスムーズに動くようになります!
それではまた!^^ノシ