Language:
Page Info
Skill Level:
Engine Version:

ブループリント変数

変数 とは、ワールド内のオブジェクトやアクタの値または参照を保持するプロパティです。これらを含む ブループリント には内部からアクセス可能です。 また、 レベルに配置された ブループリント のインスタンスで作業をしているデザイナーが変更を加えられるように、 外部からのアクセスも可能となっています。

変数は、角丸の四角内に名前が入って表示されます。

Variable Nodes

マチネを使用した特別型の変数値の修正方法については、マチネで ブループリントのプロパティを修正する をご覧ください。

変数の型

変数は、Boolean、integer、float などのデータ型や、オブジェクト、アクタ、特定クラスなどを保持するリファレンス型など、様々な型での作成が可能です。 それぞれの変数型の 配列 の作成も可能です。それぞれの型は見やすいように色分けされています。

変数の型

使用方法

Boolean

Red

RedWire.png

赤の変数は Boolean (true/false) データを表します。

Integer

Cyan

CyanWire.png

シアン色の変数は整数または小数点以下の部分を含まない 0、152、-226 等のデータを表します。

Float

Green

GreenWire.png

緑の変数は浮動小数値または小数点以下の部分を含む 0.0553、101.2887、-78.322 等のデータを表します。

String

Magenta

MagentaWire.png

マジェンタ (赤紫) 色の変数は文字列または Hello World などの英数字を表します。

Text

Pink

PinkWire.png

ピンクの変数は表示されたテキストデータを表します。特にテキストがローカリゼーションを意識している場合です。

Vector

Gold

GoldWire.png

金色の変数はベクター値または 3 要素に対応する浮動小数値から成る値、または XYZ や RGB 情報など軸を表します。

Rotator

Purple

PurpleWire.png

紫色の変数は 3D 空間の回転を定義するローテータ―のデータを表します。

Transform

Orange

OrangeWire.png

オレンジ色の変数は、平行移動 (3 次元位置)、回転、スケーリングを組み合わせた変位データを表します。

Object

Blue

BlueWire.png

青の変数はライト、アクタ、スタティック メッシュ、カメラ、サウンド キューなどのオブジェクトを表します。

My Blueprint タブの変数

[My Blueprint] タブには、カスタム変数をブループリントへ追加することができ、 コンポーネント リスト に追加されたコンポーネント インスタンス変数やグラフで値を変数に昇格させて作成した変数を含めて、 存在する全ての変数が一覧にされます。

My BLueprint Pane

変数の作成手順

ブループリント内での変数の作成は、以下の手順で行うことができます。

  1. ブループリントを作成 し、[Graph] タブで開きます。

  2. [MyBlueprint] ウィンドウからブループリントの変数を作成するには、変数リスト ヘッダー myblueprint_variable.png 上にある Add Button plus_Button.png ボタンをクリックします。

    MyBlueprintPane_createVar.png

  3. 新しい変数が作成され、名前を要求されます。

    HT5.png

    ブループリントの名前を入力し、[Details (詳細)] パネルに進んで変数のプロパティを調整します。

  4. [Details (詳細)] パネルには、変数の使用とアクセスの方法を定義する設定がいくつかあります。

    HT6.png

    変数の デフォルト値 を設定するには、まずブループリントを コンパイル する必要があります。

オプション

説明

Variable Name

変数の名前です。

Variable Type

ドロップダウン メニューから 変数の型 を設定し、変数が 配列 かどうかを判断します。

Editable

ブループリントのインスタンス上で変数がパブリックで編集可能かどうかを指定します。

Tooltip

変数上にカーソルがあると変数の追加情報が表示されます。

Expose on Spawn

ブループリントをスポーン時にピンとして変数をエクスポーズします。

Private

この変数をプライベートにします (派生ブループリントによる修正不可)。

Expose to Matinee

この変数を編集のためにマチネにエクスポーズします。

Config Variable

config ファイルから変数を設定することができます。

Category

与えられたラベル毎に変数を分類することができます。変数はラベル毎にソートされます。

Replication

この変数をネットワーク上で レプリケーション するか否かを指定します。

[Details (詳細)] パネルを展開して、シリアル化のオプションを定義することができます。

HT37.png

[Transient] オプションは、読み込み時に変数をシリアル化してゼロを入れるかどうか設定します。[SaveGame] オプションは、保存したゲームの変数をシリアル化するかどうか設定します。

編集可能な変数

変数を [Editable (編集可能)] に設定すると、変数が存在するブループリントの外部から変数を修正することができます。

HT21.png

[Details (詳細)] パネルの [Editable] 設定で変数を編集可能にすることもできます。または、[MyBlueprint] ウィンドウ内の変数の隣にある 閉じた目 のアイコンをクリックして行うこともできます。目のアイコンが閉じている場合、変数は編集不可に設定されています (これはデフォルト設定です)。目のアイコンが開いている場合、変数は Public (または以下の画面のように Editable) に設定されています。

変数を編集可能に設定したら、メイン エディタ ウィンドウの [Details (詳細)] パネルから変数の値を設定できます。

HT23.png

上の画像では、変数、LightColor が編集可能に設定されています。これで、レベル エディタの [Details (詳細)] パネルで値を設定できます。

変数のツールチップ

変数上にマウスを当てると表示される変数の ツールチップ をエディタに追加することもできます。

HT25.png

その変数の [Details (詳細)] パネルからでも ツールチップ の追加が可能です。ツールチップが追加されると、その変数が Public 設定の場合、目のアイコンが黄色から緑に変化します。これは、その変数に対してツールチップが書き込まれたことを示しています。

HT24.png

スポーン時に公開

[Expose on Spawn (スポーン時に公開)] オプションは、変数が存在するブループリントのスポーン時に、その変数をアクセス可能にするかを設定します。

HT26.png

上の画面には LightColor という変数があります。これは [Expose on Spawn(スポーン時に公開)] に設定される Linear Color プロパティです。この変数は Set Light Color ノードと LightColor 変数を使用してライトの色を決める Point Light ブループリントに実装されます。

以下は、Point Light ブループリントをスポーンするためにスクリプトを使用した別のブループリントです。LightColor 変数がスポーン時に公開される設定になっているので、この値を設定するオプションは Spawn Actor from Class ノードで利用でき、ゲームワールドでスポーンするライトの色を設定することができます。

HT27.png

プライベート変数

変数上で [Private] オプションにチェックを入れると、外部ブループリントから変数を修正できなくなります。

例えば、以下のようにプライベートに設定されていない変数があったとします。

HT42.png

別のブループリント内で、この変数を含むブループリントのスポーンを選択して、Return Value から変数にアクセスすることができます。

HT43.png

しかし、Private として設定しておくと、以下のようになります。

HT41.png

ブループリントを再度スポーンしようとし、アクセスできなかった変数へのアクセスを再度試みます。

HT44.png

マチネに公開

マチネ で行った変更を変数に反映させるには、[Expose to Matinee (マチネに公開)] オプションにチェックを入れる必要があります。

HT31.png

以下のように、マチネを作成して、ブループリントを含むトラックを追加します。マチネでブループリントに存在する Linear Color 変数を修正します。修正は、LinearColor Property Track を追加して行います。

HT32.png

すると、LinearColor 変数を選択し、ブループリント (LightColor) プロパティから修正するように促されます。

HT33.png

その通りに修正すると、トラックにキーを追加して、時間経過に合わせて変数の値を修正することができます。

HT34.png

マチネ を使った作業の詳細は マチネ & シネマティクス をご覧ください。

変数化

[Promote to Variable (変数化)] オプションを使用しても、変数の作成が可能です。

ブループリント ノード上の任意の入出力ピン上で 右クリック して [Promote to Variable] オプションを選択します。

HT38.png

New Light Color ピンを右クリックして [Promote to Variable] を選択すると、変数に New Light Color を割り当てることができます。

HT40.png

または入出力ピンをドラッグして [Promote to Variable] オプションを選択することができます。

HT39.png

ブループリントで変数にアクセスする

ブループリントで変数の作業をする場合、通常、Get ノード (ゲッターといいます) を使用して変数の値を取得するか、Set ノード (セッターといいます) を使用して変数の値を設定するかの、いずれかの方法で行います。

HT45.png

変数に対して Set ノード (上の 1) または Get ノード (上の 2) を作成するには、グラフ内で右クリックして、Set (変数名) または Get (変数名) と入力します。あるいは、Ctrl キーを押して MyBlueprint ウィンドウから変数をドラッグして Get ノードを作成するか、または Alt キーを押して MyBlueprint ウィンドウから変数をドラッグして Set ノードを作成する方法もあります。

変数の編集

変数値はブループリント ノード ネットワークの一部として、あるいはデフォルト値として実行前に設定することができます。デフォルト値を設定する方法は以下の通りです。

  1. [Class Defaults (クラス デフォルト)] ボタンをクリックし、[Details (詳細)] パネルでブループリント デフォルトを開きます。

  2. [Details (詳細)] パネルで変数名の右側に任意のデフォルト値を入力します。

    blueprint_details_variable_callout.png

    上の画面では、デフォルト カラーを設定できる Color 変数をハイライトしています。

デフォルトに変数が表示されない場合、[Compile (コンパイル)] ボタンをクリックしているか確認してください。

変数名の変更

変数名は以下の方法で変更します。

  1. [My Blueprint] タブの変数名を 右クリック し、表示されたメニューから [Rename (名前変更)] を選択します。

    rename_variable_menu.png

  2. テキスト欄に新規変数名を入力し、[Enter] を押して保存します。

    rename_variable.png

変数のプロパティ

[Details (詳細)] パネルで変数に関する全てのプロパティを設定できます。変数によっては、ベクターの Expose to Matinee や Integers または Floats といった数値変数の Slider Range など、ここで紹介していない様々なプロパティを持っています。

プロパティ

説明

Variable Type

ドロップダウン メニューから変数の型を設定し、変数が配列かどうかを判断します。

Editable

クラスのデフォルト とブループリントの [Details (詳細)] タブで変数の値を編集可能にするかどうかを設定します。

Tooltip

変数のツールチップを設定します。

Private

変数をプライベートにし、派生したブループリントから修正はできないように設定します。

Category

既存カテゴリから選択するか、新規カテゴリ名を入力します。Class Defaults (クラスのデフォルト)[My Blueprint] タブ、ブループリントの [Details (詳細)] タブで変数を表示させるかどうかを設定します。

Replication

変数の値をクライアント中にレプリケートするかどうかを選択し、値がレプリケートされる場合はコールバック関数による通知が必要かを選択します。

変数値の取得と設定

Get ノードおよび Set ノードにより、変数をブループリント ネットワークの一部として編集することも可能です。その一番簡単な方法は、[Variables (変数)] タブから変数をイベント グラフへ直接ドラッグすることです。小さなメニューが表示され、Get ノードあるいは Set ノードを作成するかを聞いてきます。

VariableGetSet.png

Get ノード

Get ノードはネットワークの一部に変数値を与えます。作成されたこれらのノードは、適切なタイプのすべてのノードに接可能になります。

GetVariable.png

Set ノード

Set ノードで変数の値を変更することができます。これらのノードを実行するには、実行ワイヤーから呼び出さなければならないことにご注意ください。

SetVariable.png

My Blueprint タブのドラッグによるショートカット

Ctrl - ドラッグ

Get ノードを作成します。

Alt - ドラッグ

Set ノードを作成します。