妹でもわかるUnrealEngine4

毎日更新? 妹に説明するために書いてるけど、たまにわかってない場合もあるUnrealEngine4を中心としたゲーム制作の話。略すとイモリアル

毎日更新? 妹に説明するために書いてるけど、たまにわかってない場合もあるUnrealEngine4を中心としたゲーム制作の話。略すとイモリアル

変数を空っぽにする方法

妹「アクターが入った変数ってあるでしょ、水色のやつ。あれを削除するっていうのは出来ないのかな?」

「変数の削除というのは無いかも。配列だったらRemove出来るけど、あれは例外だし、それでも配列そのものを消すことは出来なくて長さ0の配列になる」

妹「消さなくてもいいんだけど、なんというか、なんにもない状態にしたいんだよ」

「アクターの変数だったら、Nullをセットするというのは出来るよ。何もSETしてない状態に戻す感じで」

f:id:una_unagi:20160101212218p:plain

「入力ピンに何もつながないとアクターの選択欄が出るから、アセットを選択せずに(なし)を選んでおくと、その(なし)がセットされる。つまりNullがSETされた状態になる」

妹「(なし)ってことは、何もSETしないってことじゃないの?」

「SETノードを実行すると、必ず何かはセットされるみたい。何もSETしたくない場合は今入ってるのと同じ内容を指定するか、直前にブランチノードでも挟んで実行しないようしないといけない」

妹「じゃあ(なし)ってのが出てこない場合は?」

「それは多分Nullの入れようがない変数だと思う。例えばIntegerとかは整数しか入れられなくて、最初から入ってるのは0だけど、普通の0だから空っぽみたいな意味はない」

妹「数字を消すには……」

「0自体に空っぽという意味は無いけど、0の時は何も入ってないとして扱うみたいなブループリントを作れば、0に意味を持たせる事はできる。でも0が普通のパラメータの範囲内の場合は、空っぽかどうか見分けが付かないから、代わりに-1を空っぽ扱いで使うこともよくある。マイナスもありえるケースだと、空っぽかどうかだけを調べるBooleanを別変数として追加する方法もある」