【UE5】左クリックで攻撃する!キャラクターに攻撃をさせてみよう!Unreal Engine Tutorial
おはようございませぅ!🌞
今回の記事では、左クリックをすると、Animationが再生され、キャラクターが攻撃をする!という処理を作成していきたいと思います。
この記事は下記2つの記事の続きになりますので、ご了承ください。
ただ、下記2つは、移動モーションになりますので、攻撃処理だけで問題ないという方は、こちらの記事のみで十分だと思われます!
用途に応じてご覧ください。
それでは、今回も楽しくやっていきましょう!
まずは、入力アクションを作成していきます!
ThirdPerson➡Input➡Actionsのフォルダで、右クリックから、
入力アクションを作成します。
名称:IA_Attack
そしたら、Inputフォルダに移動し、
ここにある「IMC_Default」を開いてください。
Mappings横の+を押して欄を追加した後に、IA_Attackを設定。
▼をクリックして開いたら、項目にマウスの左ボタンを設定します!
これができたら、セーブして、閉じてもらって大丈夫です。
キャラクターブループリントのイベントグラフに移動してください。
◆IA_Attackを配置
◆Play Anim Montageを配置
Anim Montageを設定(再生したいアニメーションを設定)
Montageがない方は、再生させたいアニメーションシーケンスを右クリックし、作成するから、AnimMontageを作成をするとMontageが作成され、設定することができるようになります。
モンタージュにした、シーケンスの「Enable Root Motion」にチェックを入れておいてください。
コンパイルしてセーブをしてください。
そしたら、こんな感じで、攻撃をすることができるようになっているかと思います。
ただ、1つ問題があります。左クリックを連打してみてください。。。
ガガガガガガガッ!!!
みたいな感じでアニメーションの最初ばかり作成されると思います。
このままでは、ダメなので、ある程度アニメーションが再生されないと攻撃ができないように、ここからの作業でやっていきたいと思います。
設定している、アニメーションモンタージュを開いてください。
真ん中したの再生スペースで、武器を振り切ったとこに再生バーを合わせます。そしたら、通知の下にある「1」の項目のところで、右クリックをしてください。
通知を追加➡新規通知を追加します。
名称:Next Attack
そうすると、通知が作成されたと思います。
それでは、ブループリントで、ここまで振り切った場合に
次のアニメーションが再生される!というノードを組んでいきます!
キャラクターブループリントのイベントグラフに移動します。
◆Branchを配置する
◆変数を作成する(名称:Next Attack)
◆Next AttackをGetで配置してBranchと接続
◆Next AttackをSetで配置してBranchと接続
Next Attack変数のデフォルト値はTrueにしておいてください。
◆Add Custom Eventを配置(名称:Attack)
◆Next Attackを配置して接続
アニメーションブループリントを開きます。
Event Blueprint Update Animationの実行ピンの先に、
◆「Cast to BP_CharacterParagon」を配置します。(GameでPlayするBP)
◆Cast to BP_CharacterParagonのピンを右クリックで変数にする
◆変数化したCharacterParagonをGetで配置
◆右クリックからAnimNotify_Nextattackを配置
◆CharacterParagonのピンを引っ張り、Attackを配置
全て完了したらコンパイルとセーブをして、プレイ画面に戻ります。
左クリックを連打してみてください。先ほどまでとは違い、MontageにNextAttackを設定してところまでアニメーションが再生されないと、次のモーションに移行できないようになったと思います!
こちらで今回のTutorialは終わりになります。
おめでとうございます👏お疲れさまでした!
次の記事はここからの続きで、コンボ攻撃に移行できるような処理を作成していきたいと思います。
それでは、また次回お会いしましょう!