こんにちは、株式会社Leon Gameworksの遠藤です。

先日UE5.5がリリースされました。今回は、アップデートされた機能の中から、特にツール開発に役立つ「ブループリントに新規変数を追加」する機能を紹介します。

記事の目次

    0:動作環境

    本記事はUE5.5.0を基に執筆しており、エディタの言語は「英語」でスクリーンショットを撮影しております。

    本記事で作成するツールのプロジェクト一式のデータは、以下からダウンロードできます。

    今回のプロジェクトデータ

    1:UE5.5の新機能:新規変数の追加

    UE5.5から、「Add Member Variable」ノードによって、指定したブループリントに変数を追加できるようになりました。

    ▲ 「Add Member Variable」ノード

    「Add Member Variable」ノードの[Variable Type]に値を渡すには、型の指定専用のノードを用いる必要があります。

    ▲型を指定するためのノード群

    標準的な型は「Get Basic Type by Name」ノードで、[Type Name]に以下の文字列を指定することで取得できます。無効な文字列を指定するとInteger型になります。

    文字列

    int

    Integer

    byte

    Byte

    bool

    Boolean

    real

    Float (double)

    name

    Name

    string

    String

    text

    Text

    また、変数名を既存の変数名と同名にした場合は、末尾に連番が付いた新規変数が追加されます。

    「Add Member Variable with Value」の場合は、型を指定する必要がなく、[Default Value]に値をそのまま入れるとその値の型の変数が作成されます。実行時の値は考慮されず、新規作成された変数はデフォルト値が固定されているため、注意が必要です。

    ▲ 「Add Member Variable with Value」ノード

    2:変数を新規作成するツール

    「Add Member Variable」ノードを用いて、指定したブループリントアセットに標準的な変数を追加するツールを作成していきます。

    まずは、新しくEditor Utility Widgetを作成します。アセット名は「EUW_AddVariables」とします。

    ▲ EUW_AddVariables

    作成したアセットを開き、以下のように階層を組みます。

    ▲ ツールのWidget階層

    それぞれ以下のような役割があります。
    変数の型はコンボボックスを用いて、プルダウンメニューで指定できるようにしています。また、変数名はEditableTextBoxで任意の文字列を入力できるようにしています。

    ▲ 各Widgetの役割

    ブループリントの指定には「Single Property View」を使用しているので、「Pre Construct」イベントにて「SetObject」ノードを実行しています。

    ▲ 「SetObject」ノードで自身を登録

    [Add Variable]ボタン実行時の処理では、まずブループリントアセットが無効でないかチェックしています。

    ▲ ブループリントアセットが無効でないかチェック

    最後に各Widgetから取得した文字列を基に、「Add Member Variable」で変数を追加します。

    ▲ 「Add Member Variable」で変数を追加

    3:まとめ

    今回はUE5.5で追加された新しい機能について解説しました。Editor Utility関連は頻繁に機能がアップデートされているので、今後も新機能があれば本連載で紹介していきたいと思います。

    本記事で作成したツールのプロジェクト一式のデータは、以下からダウンロードできます。

    今回のプロジェクトデータ

    株式会社Leon Gameworks

    ●公式サイト
    www.leon-game.co.jp

    ●X(Twitter)
    @Leon_Gameworks

    トンコツ(遠藤俊太)

    ●トンコツ開発ブログ
    shuntaendo.hatenablog.com

    ●X(Twitter)
    @tonkotsu3656

    TEXT_トンコツ(Leon Gameworks)
    EDIT_小村仁美 / Hitomi Komura(CGWORLD)、オムライス駆