【Unity】VFXグラフのオペレーターサブグラフを使う

投稿者: | 2021-05-22

オペレーターを一つのサブグラフにまとめて使ってみました。

オペレーターサブグラフを作る

オペレーターサブグラフを作る方法は2つあります。一つは、Projectウィンドウで右クリックからアセットを新規作成する方法です。

作られたアセットをダブルクリックすると、VFXウィンドウで編集できます。

もう一つの方法では、既存のVFXグラフの中のオペレーターをサブグラフに変換します。例えば下のように複数のオペレーターを接続したとします。

2つのプロパティのExposedにチェックをいれて、プロパティノードを作り他のオペレーターへ接続しています。これらがオペレーターサブグラフの入力になります。

次に、サブグラフにまとめたいオペレーターをすべて選択します。

選択したオペレーターを右クリックして「Convert To Subgraph Operator」を選択すると、ダイアログが出るので保存します。

すると、これらが一つのノードになります。

オペレーターサブグラフを編集する

オペレーターサブグラフを編集するには、保存されたアセットをダブルクリックするか、オペレーターサブグラフノードを右クリックして「Enter Subgraph」を選択します。

すると、VFXウィンドウに元のオペレーターが表示されます。

右側に新しいオペレーターが作られているのがわかります。これは出力のためのプロパティで、Blackboardでは「Output」カテゴリーに分類されています。

入力はExposedにチェックを入れたプロパティです。プロパティは+ボタンから新規作成したり、ドラッグアンドドロップでOutputカテゴリーに移動することができます。

また、ラベルを右クリックで削除できます。

オペレーターサブグラフを使う

VFXグラフの中でオペレーターサブグラフを使うには、何も無いところで右クリックから「Create Node」をクリックし、作成したいサブグラフを選択します。名前で検索するとすぐに見つかります。

また、アセットをProjectウィンドウからVFXウィンドウへドラッグアンドドロップする方法もあります。

オペレーターサブグラフノードは、通常のオペレーターのように、左のスロットにノードを接続して値を変えたり、ブロックなどに値を出力できます。

コメントを残す

メールアドレスが公開されることはありません。