single.php

Unreal Engineでキャラクターの体力ゲージとダメージ処理を追加する方法(その2)

ゲーム開発を試してみようと思い立ち、Unreal Engine 5をインストールして開発する過程で調べてみた部分を備忘録的に投稿します。今回はダメージを受けるアクターを用意してキャラクターにダメージを受ける処理を追加していきます。

先回までのダメージ処理については、別記事をご覧ください。

https://blog.janjan.net/2024/02/10/unreal-engine-character-damage-process-vol-1/

ダメージを受けるアクターを作成

キャラクターにダメージを与えるために、近づくとダメージを受けるアクターを作成します。

1.[コンテンツドロワー]の[ThirdPerson|Blueprints]フォルダーを開きます。

2. 空いている場所をマウスで右クリックして表示されたポップアップメニューで[ブループリント クラス]を選択します。

3.[親クラスを選択]画面で[Actor]をクリックします。

4. 追加された[ブループリント]の名前を “BP_DamageBox” に変更します。

5.[BP_DamageBox]をダブルクリックして表示された画面で[コンポーネント]画面で[追加]をクリックします。

6. 表示された一覧から[Static Mesh]を選択します。

7. 追加された[StaticMesh]を選択します。

8. [詳細]画面の[スタティックメッシュ|Static Mesh]のプルダウンリストを開き表示された一覧から[SM_Cube]を選択します。

9.[トランスフォーム]の[拡大・縮小]の数値を変更してサイズを合わせます。

10.[コンポーネント]画面の[追加]をクリックして表示された一覧から[Box Collision]を選択します。

11.[ビューポート]に黄色い枠が追加されます。

12.[詳細]画面の[イベント]内[On Component Begin Overlap]の[+]をクリックします。

13.[イベントグラフ]に[On Component Begin Overlap]が追加されます。

14. [Other Actor]ピンを伸ばして表示された[Actor オブジェクト参照を取得する動作]画面で “Cast to BP_ThirdPersonCharacter” を検索して追加します。

15. グラフ画面に[Cast To BP_ThirdPersonCharacter]が追加されます。

16.[As BP ThirdPerson Character]のピンを伸ばして表示された[BP Third Person Character オブジェクト参照を取得する動作]画面で “Apply Damage” を検索して追加します。

17. 追加された[Apply Damage]の[Base Damage]を[10.0]に変更します。

18.[Apply Damage]の実行ピンを伸ばして[実行可能なアクション]画面で “Print String” を検索して追加します。(デバック用の一時的な処理です)

19.[Print String]の[In String]を ”Damaged” などに変更します。

20.[ThirdPersonMap]画面で[コンテンツドロワー]から[BP_DamageBox]をレベルにドラッグします。

21. 配置されたアクターの矢印をマウスでドラッグして見える位置に調整します。

ここまでの作業で、ゲーム画面にキャラクターにダメージを与えるアクターの追加ができました。

実行して確認

ゲームを開始後、キャラクターを操作してて配置したアクターに近づけると[Print String]に設定した文字が表示されます。

次回は追加したアクターで受けたダメージをゲージから減らす処理を追加していきます。

まとめ

今回は、Unreal Engineでキャラクターの体力を表示するゲージを追加する方法ついて書きました。

キャラクターがダメージを受けるための前準備として、アクターを新しく作成しました。

敵キャラの他に、地雷や毒などレベルに配置されたアクターからもダメージを受ける仕組みは必要になるので、その際に使える手順です。

Unreal Engineのゲーム開発でキャラクターの体力ゲージを表示させたい人の参考になれば幸いです。

スポンサーリンク

最後までご覧いただき、ありがとうございます。

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です