Unreal Engine 5(UE5)では、ゲームプレイ中に画面の中央にメッセージを表示することで、プレイヤーに重要な情報を伝えることができます。本記事では、ブループリントを使用して画面中央にメッセージを表示する方法を詳しく解説します。
1. 必要な準備
画面にメッセージを表示するには、以下の方法を使用できます。
- 「Print String」を使用する(簡易的な方法)
- 「HUDクラス」を使用する(カスタマイズが可能)
- 「Widget(ウィジェット)」を使用する(推奨)
ここではウィジェットを使用してメッセージを表示する方法を紹介します。
2. ウィジェットを作成する
画面中央にメッセージを表示するには、まずウィジェットを作成します。
- 「コンテンツブラウザ」で「新規作成」→「ユーザーインターフェース」→「ウィジェットブループリント」を選択
- 名前を「MessageWidget」に変更し、ダブルクリックして編集
次に、ウィジェット内にテキストブロックを追加します。
- 「パレット」から「Text」をドラッグしてキャンバスに配置
- 「詳細」タブで「アンカー」を中央に設定
- 「テキスト」の初期値を「メッセージ」としておく
- 変数名を「MessageText」に変更し、「変数として公開」をチェック
3. メッセージを表示する処理を追加
次に、プレイヤーキャラクターのブループリントで、メッセージを表示する処理を作成します。
- 「イベントグラフ」に移動
- 「カスタムイベント」を作成し、名前を「ShowMessage」にする
- 「ShowMessage」の入力ピンに文字列型の引数「Message」を追加
次に、以下のノードを接続します。
ShowMessage → Create Widget(クラス: MessageWidget) → Add to Viewport
↓
Set Text(ターゲット: MessageText、値: Message)
これにより、「ShowMessage」イベントを呼び出すと、画面中央にメッセージが表示されます。
4. メッセージを一定時間後に消す
メッセージを表示した後、一定時間後に自動的に消す処理を追加します。
- 「ShowMessage」の最後に「Delay」ノードを追加し、時間を「3秒」に設定
- 「Remove from Parent」ノードを接続し、ウィジェットを削除
Delay(3秒) → Remove from Parent(ターゲット: MessageWidget)
5. メッセージを表示するテスト
最後に、適当なイベント(例: アイテムを拾ったとき)で「ShowMessage」を呼び出して動作を確認します。
ShowMessage("アイテムを拾いました!")
これで、プレイヤーがアイテムを拾ったときに画面中央にメッセージが表示されるようになります。
6. まとめ
今回の手順で、UE5のブループリントを使用して「画面中央にメッセージを表示する」処理を実装しました。
- ウィジェットを作成し、テキストブロックを配置
- プレイヤーキャラクターで「ShowMessage」イベントを作成
- 一定時間後にメッセージを自動で消す処理を追加
この方法を応用すれば、ゲーム内の通知やストーリー演出などに活用できます。ぜひ試してみてください!