single.php

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

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

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

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

キャラクターの体力を減らす処理

新しく作成したアクターに近づいた際に、固定のダメージ量をゲージから減らす処理を追加します。

1.[BP_ThirdPerson]の[マイブループリント]画面の[変数]右の[+]をクリックして変数を追加します。

2. 追加された変数の名前を “HealthPoint” に変更し[変数の型]一覧から[Float]を選択します。

3.[HealthPoint]をイベントグラフにドラッグして表示されたポップアップ画面で[Get HealthPoint]を選択します。

4.[イベントグラフ]に[Health Point]が追加されます。

5.[イベントグラフ]の空いている場所で右クリックして表示された[このブループリントで使えるノード]画面で “Event AnyDamage” を検索して追加します。

6.[イベントグラフ]に[Event AnyDamage]が追加されます。

7.[Health Point]のピンを伸ばして表示された[浮動小数点(倍精度)を取得する動作]画面で ” – ” を検索して[Subtract]を追加します。

8.[イベントグラフ]に[ – ]が追加されます。

9.[Event AnyDamage]の[Damage]ピンと接続します。

10.[ – ]の右側のピンを伸ばして表示された[浮動小数点(倍精度)を取得する動作]画面で “Set Health Point” を検索して追加します。

11.[イベントグラフ]に[セット]が追加されます。

ここまでの作業で受けたダメージを減算する処理が完成です。

ゲージから体力を減算する処理

先回、ビューポートに追加した処理を修正して、受けたダメージをゲージから減らす処理を追加していきます。

1.[BP_ThirdPersonCharacter]の[イベントグラフ]内[Add to Viewport]を選択して削除します。

2.[Create WP Health Bar Widget]の[Return Value]からピンを伸ばして表示された[WP Health Bar オブジェクト参照を取得する動作]画面で[Promote to variable(変数へ昇格)]を選択します。

3. 追加された[セット]と[Create WP Health Bar Widget]の実行ピンを接続します。

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

5.[セット]の実行ピンを伸ばして表示された[WO Health Bar オブジェクト参照を取得する動作]画面で “Add to Viewport” を検索して追加します。

6. 追加された[Add to Viewport]の[Target]ピンを接続します。

7.[Add to Viewport]の実行ピンを[Cast To PlayerController]と接続します。

キャラクターの体力を減らす処理(続き)

[Event AnyDamage]から追加した処理の続きを設定します。

1.[イベントグラフ]の[Event AnyDamage]付近に移動して[マイブループリント]画面の[HealthBar]変数を選択します。

2.[イベントグラフ]の空いている場所にドラッグして表示されたポップアップメニューから[Get HealthBar]を選択します。

3. 追加された[Health Bar]からピンを伸ばして表示された[WP Health Bar オブジェクト参照を取得する動作]画面で “Set Health Point” を検索して追加します。

4.[イベントグラフ]に追加された[セット]の実行ピンを接続します。

5. [Event AnyDamage]付近の[Health Point]を選択して[詳細]画面の[デフォルト値]を[100.0]に設定します。

6.[WP_HealthBar]の[イベントグラフ]内の[Health Point]を選択して[詳細]画面の[デフォルト値]を[100.0]に設定します。

ここまでの作業で、ゲーム画面にキャラクターからダメージを減算する処理がすべて完成しました。

実行して確認

ゲームを開始後、キャラクターの上部に体力ゲージが表示されます。

キャラクターを操作して、レベルに配置したダメージを受けるアクターに近づくとゲージから一定の量が減ります。

何度も近づくと、その度にゲージから一定の量が減る動作を繰り返します。

まとめ

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

レベル上に配置したダメージを受けるためアクターに近づくと一定量のダメージを受ける処理を追加し、表示したプログレスバーから減らします。

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

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

スポンサーリンク

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

コメントを残す

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