読者です 読者をやめる 読者になる 読者になる

みつまめ杏仁

アンリアルエンジン(UE4)でGUIを作るためにゴニョゴニョしてます。UIデザイナーの皆様の助けになれば幸いです。

ブループリントマクロのローカル変数

ブループリントマクロの中だけで使えるローカル変数の使い方がやっとわかったのでメモメモ。

とりあえずノードパレットから、"Local" で検索したら以下のものが出てきました。

f:id:hiyokosabrey:20160317225418p:plain

並べてみたらなかなかキレイで壮観。

すぐに気づくと思いますが、この形は値を取り出すときのPIN配置。

Get用なのです。配列型は ADD ノードがあるので大丈夫そうだけど、値をSetできないのにどうやって使うの?

とずっと疑問でした。

なんとなくノードカテゴリ Utilities > Macro を開けてみた時、ふと気になったAssign のノード。もしや。

f:id:hiyokosabrey:20160317230859p:plain

Tipsに Assign Value to Variable って書いてあるし。

f:id:hiyokosabrey:20160317230708p:plain

きたこれ。

さっそく実験。

Original という名前の Integer型の変数を用意して、初期値に適当な値を入れておきます。

で、マクロは以下の状態。

f:id:hiyokosabrey:20160317231445p:plain

PrintStringして内容を確認してみます。

f:id:hiyokosabrey:20160317232151p:plain

実行してみると・・・

f:id:hiyokosabrey:20160317232301p:plain

Original には 初期値 5 を入れてみたのですが、結果は 0 あれ~?

しばらく悩んだあげくつなぎ方を変えてみた。

f:id:hiyokosabrey:20160317232541p:plain

で結果がこれ。

f:id:hiyokosabrey:20160317232714p:plain

おお!ばっちり。

さっき2つ登場させたら結果が 0 になったのが気になるので、もう一つ検証。

f:id:hiyokosabrey:20160317233832p:plain

結果表示用に少し改造。

f:id:hiyokosabrey:20160317234311p:plain

結果は・・・

f:id:hiyokosabrey:20160317234447p:plain

まさか各型で一つしか使えないってことはないよなー、と思っていたら大丈夫ですね。

マクロを使うのが面白くなりそうです。