UEFN / Verse

【UEFN】Billboard Device (ビルボードの仕掛け) の使い方|Verse制御でテキストを動的に書き換える手順

UEクリエイターズ【運営】

こんにちは、UEクリエイターズです。今回もUEFN(Unreal Editor for Fortnite)の使い方について解説していきます。

この記事では、Billboard Device(ビルボードの仕掛け)のテキスト動的変更とVerseによる制御について具体的に説明していきます。

動画でも解説しているので参考にしてみてください。

概要

【UEFN】Billboard Device (ビルボードの仕掛け) の使い方|Verse制御でテキストを動的に書き換える手順

Billboard Device(ビルボードの仕掛け)は、3D空間内にテキスト情報を表示するためのデバイスです。HUDデバイスとは異なり、プレイヤーがその場所に近づくことで文字を認識できる仕組みを提供します。

RECOMMEND
【UEFN】HUD Message Device (HUDメッセージの仕掛け) の使い方|Verse制御で特定のプレイヤーに表示する実装手順
【UEFN】HUD Message Device (HUDメッセージの仕掛け) の使い方|Verse制御で特定のプレイヤーに表示する実装手順

従来、特定の条件(レベルアップや開店・閉店など)でテキストを切り替えるには、複数のビルボードを重ねて配置し、表示・非表示を切り替える手法が取られてきました。しかし、この方法ではデバイス数が増大し、メンテナンス性やメモリ負荷に課題が生じます。

Verseを活用することで、1台のビルボードデバイスに対して動的に文字列を上書き(SetText)することが可能になります。本記事では、Switch Device(スイッチの仕掛け)と連携し、ステータスを「OPEN」から「CLOSED」へ切り替える実装例を解説します。

検証環境:UnrealEditor5.8(2026年1月時点)

Billboard Device の基本設定

実装に必要なデバイスをビューポートに配置し、以下の通りプロパティを設定します。

Billboard Device(ビルボードの仕掛け)

【UEFN】Billboard Device (ビルボードの仕掛け) の使い方|Verse制御でテキストを動的に書き換える手順
  • Text(テキスト): 空欄に設定(ゲーム進行中に動的に出現させる演出のため)。
  • Outline(アウトライン): Thick(厚い)に変更。視認性を向上させるために推奨されます。
  • Show Border(ボーダーを表示): デバッグ時や黒板のような見た目が必要な場合は有効にしますが、通常は非表示で使用します。

Switch Device(スイッチの仕掛け)

【UEFN】Billboard Device (ビルボードの仕掛け) の使い方|Verse制御でテキストを動的に書き換える手順
  • デフォルト設定で問題ありません。オン/オフの状態切り替えイベントを利用します。
RECOMMEND
【UEFN】スイッチの(切り替える)仕掛けの使い方|オン/オフ制御からセーブ機能(持続データ)まで
【UEFN】スイッチの(切り替える)仕掛けの使い方|オン/オフ制御からセーブ機能(持続データ)まで

Verseによる制御・実装

Verseでビルボードのテキストを制御する際、最も重要なのは「message型」の扱いです。

message型とローカライズ

ビルボードの SetText 関数は、通常の string 型(文字列)ではなく、messageのみを受け付けます。これは、将来的な多言語対応(ローカライズ)を前提とした設計になっているためです。Verseコード内でメッセージを定義する際は、<localizes> 指定子を使用します。

実装コード

以下のコードをVerseファイルに記述し、ビルボードとスイッチを紐付けます。

フルコード

# ----------------------------------------------
# Documentation: https://uecreators.com/billboard-verse
# ----------------------------------------------

using { /Fortnite.com/Devices }
using { /Verse.org/Simulation }
using { /UnrealEngine.com/Temporary/Diagnostics }

# ボタンで看板の文字を書き換えるデバイス
billboard_manager := class(creative_device):

    # 1. 書き換えたい看板(billboard)
    @editable
    Mybillboard : billboard_device = billboard_device{}

    # 2. 切り替えスイッチ
    @editable
    MySwitch : switch_device = switch_device{}

    # ローカライズ(翻訳)用テキストの定義
    # Verseでbillboardの文字を変えるには、"message"という型にする必要があります
    TextOpen<localizes> : message = "STATUS: OPEN"
    TextClosed<localizes> : message = "STATUS: CLOSED"

    # ゲーム開始時の処理
    OnBegin<override>()<suspends>:void=
        # スイッチの状態が変わったらイベント発動
        MySwitch.TurnedOnEvent.Subscribe(OnOpened)
        MySwitch.TurnedOffEvent.Subscribe(OnClosed)

    # スイッチON:billboardを「OPEN」にする
    OnOpened(Agent:agent):void=
        # SetText関数には、stringではなくmessage型(TextOpen)を渡します
        Mybillboard.SetText(TextOpen)
        Print("billboardを「OPEN」に変更しました")

    # スイッチOFF:billboardを「CLOSED」にする
    OnClosed(Agent:agent):void=
        Mybillboard.SetText(TextClosed)
        Print("billboardを「CLOSED」に変更しました")

コードのポイント

  • Subscribe(サブスクライブ): TurnedOnEvent および TurnedOffEvent を購読することで、スイッチの状態変化を検知します。
  • SetText(セットテキスト): 指定したビルボードの Text 項目を動的に書き換えます。この際、引数として message 型(上記コードでは TextOpen など)を渡します。
  • 引数 Agent: イベントから送られてくるプレイヤー情報(エージェント)を受け取るための受け皿が必要です。今回のロジックでは使用しませんが、Verseのイベント処理における必須の記述です。

まとめ

Verseによるビルボード制御をマスターすることで、以下のようなメリットが得られます。

  • デバイス数の削減: 100段階のレベルアップ表示が必要な場合でも、100個のビルボードを用意する必要はなく、1つのデバイスで完結します。
  • メンテナンス性の向上: アウトライナー上で重なったデバイスを探す手間が省け、コード上でロジックを一括管理できます。
  • グローバル対応: message 型を使用することで、世界中のプレイヤーに向けたローカライズ対応がスムーズになります。

タイクーン系やシミュレーション系のマップ制作において、動的なステータス表示は非常に強力な武器になります。ぜひ自身のプロジェクトに取り入れてみてください。

関連資料

動画版視聴はこちら:https://youtu.be/f4hHeE8uSek

参考資料

billboard_device class|Verse API Reference

switch_device class|Verse API Reference

RECOMMEND
【UEFN】スイッチの(切り替える)仕掛けの使い方|オン/オフ制御からセーブ機能(持続データ)まで
【UEFN】スイッチの(切り替える)仕掛けの使い方|オン/オフ制御からセーブ機能(持続データ)まで
RECOMMEND
【UEFN】HUD Message Device (HUDメッセージの仕掛け) の使い方|Verse制御で特定のプレイヤーに表示する実装手順
【UEFN】HUD Message Device (HUDメッセージの仕掛け) の使い方|Verse制御で特定のプレイヤーに表示する実装手順

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


ABOUT ME
UECREATORS
UECREATORS
メタバース制作スタジオ
UEFN/Verse言語に特化した、Fortnite専門メタバース制作スタジオ「UECREATORS」の公式サイトです。当サイトでは、UEFNを用いたゲーム制作技術、Verseプログラミングの実装方法、3D空間設計のノウハウを発信しています。
【法人様・事業者様へ】UEFNを活用したメタバース空間の受託制作・開発支援を行っております。制作のご相談・お見積もりは、お問い合わせフォームより承っております。
Recommend
こちらの記事もどうぞ
記事URLをコピーしました