single.php

Unreal Engineで配置したアイテムにアウトラインを表示する方法(その2)

ゲーム開発を試してみようと思い立ち、Unreal Engine 5をインストールして開発する過程で調べてみた部分を備忘録的に投稿します。先回に続けてレベルに配置したアイテムにキャラクターを近づけるとアウトラインを表示する方法の続きを紹介します。

先回までのアウトラインを表示するためのマテリアルの作成については、別記事をご覧ください。

https://blog.janjan.net/2024/02/15/unreal-engine-add-outline-on-level-item-vol-1/

アウトライン表示するイベントを作成

ゲーム画面でアイテムにアウトラインを表示するためのイベントをブループリントに追加していきます。

以前に作成した「Unreal Engineで配置したアイテムに近づくとテキストを表示する方法」のブループリントを流用していきます。

https://blog.janjan.net/2024/02/13/unreal-engine-add-text-on-level-item-vol-1/

1.[コンテンツドロワー]の[BP_ItemText]を開きます。

2. [On Component Begin Overlap (Sphere)]の最後に追加してある[Set Visibility]ノードの実行ピンを伸ばして表示された[このブループリントで使えるノード]画面で “Set Overlay Material (StaticMesh)” を検索して追加します。

3.[Set Overlay Material]ノードが追加されます。

4.[New Overlay Material]の[アセットを選択]一覧から “MT_Outline” を検索して追加します。

5. 同様に[On Component End Overlap (Sphere)]画面で最後に追加してある[Set Visibility]ノードの実行ピンを伸ばして表示された[このブループリントで使えるノード]画面で “Set Overlay Material (StaticMesh)” を検索して追加します。

6.[Set Overlay Material]は既定値のままにします。

アウトライン表示するアクターを作成

ゲーム画面でアウトラインを表示するアイテムを作成していきます。

1.[コンテンツドロワー]の[BP_ItemText]を選択します。

2. マウスの右クリックで表示されたポップアップメニューから[子ブループリント クラスを作成します]メニューを選択します。

3. 追加された[ブループリント クラス]の名前を “BP_ItemText_Sword” に変更して開きます。

4. 表示された[コンポーネント]画面の[StaticMesh]を選択します。

5. [詳細]画面で “StaticMesh” を検索して[スタティックメッシュ|Static Mesh]の一覧から適当なスタティックメッシュを選択します。

6. ビューポートの形状が変更されます。

7.[コンポーネント]画面で[BP_ItemText_Sword (Self)]を選択します。

8.[詳細]画面で “Item Text” を検索して表示された[デフォルト|Item Text]に表示するテキスト(下の画像では “粗末な剣” )を設定します。

9.[コンテンツドロワー]画面で[BP_ItemText_Sword]を選択してレベル画面にドラッグします。

10. 追加された[BP_ItemText_Sword]を適当な場所に移動します。

実行して確認

ゲームを開始して配置した[BP_ItemText_Sword]の場所にキャラクターを移動します。

[Item Text]に設定した文字と、[Static Mesh]の形状に合わせてアウトラインが表示されます。

まとめ

今回は、Unreal Engineで配置したアイテムにキャラクターが近づくとアウトラインを表示する方法ついて書きました。

アクションゲームをプレイしていると、アイテムに近づくと形状の合わせてアウトラインが表示される機能があります。

今回は、配置したアクターにキャラクターを近づけると任意のテキストと形状に合わせたアウトラインを表示させるマテリアルとイベントの作成方法を紹介しました。

Unreal Engineのゲーム開発でアイテムにキャラクターが近づくとアウトラインを表示させたい人の参考になれば幸いです。

スポンサーリンク

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

コメントを残す

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