On this page |
基本的なUnityビジュアルスクリプティングのサポートは、Unity 2021.1以降で利用可能です。 現在のところ、2つのUnitノードがあります。1つはHDAのインスタンス化用で、もう1つはHDAの変更用です。 これらのノードはエディタ専用で、手動でボタンをクリックすることでアクティブ化されます。 ランタイム中、Houdini Engineは正式にサポートされていないためです。
ビジュアルスクリプティングのサポートはUnity 2021.1でのみ利用可能ですが、以降も.unitypackage
ファイルに含まれる予定です。
以前のバージョンのUnityでコンパイラーエラーを作成したり、以前のバージョンのUnityでビルドを妨げることはありません。
この機能はベータ版です。改善してほしいところがある場合は、RFEを送信してください。
セットアップ ¶
Unity Visual Scripting Graphにビジュアルスクリプティングノードを表示するには、最初にHoudiniEngineUnityとHoudiniEngineUnity.VisualScriptingアセンブリリファレンスをロードする必要があります。
ビジュアルスクリプティングのProject Settingsページは、 Edit ▸ Project Settings ▸ Visual Scripting にあります。
そこから、 Node Library ドロップダウンを展開し、HoudiniEngineUnity
とHoudiniEngineUnity.VisualScripting
アセンブリ定義を追加して、 Generate Units をクリックします。
さらに、カスタムのInspectorプロパティを使用するので、 Custom Inspector Properties ▸ Generate もクリックする必要があります。
必要なアセンブリをロードしたら、Unity Visual Scripting GraphでInstantiating HDAのインスタンス化とHDAノードの変更を利用できるようなります。
HDAのインスタンス化 ¶
新しいHDAアセットのインスタンス化を担うUnitは、Events/Editor/Houdini Engine/Houdini Engine Instantiate HDAにあります。 非同期でロードするかどうかに関係なく、HDAのパス(Assetsフォルダを基準とした相対パス)とインスタンス化の位置を指定する入力パラメータが含まれています。
アセット階層を変更することなく、.unitypackage
を使用してプラグインをインポートした場合、デフォルトのHDAパスパラメータ Assets/Plugins/HoudiniEngineUnity/HDAs/EverGreen.otl は、EverGreenのサンプルHDAアセットをインスタンス化するはずです(つまり、パラメータを変更しなくてもうまくいくはずです)。
パラメータをセットアップした後は、 Instantiate HDA ボタンをクリックしてインスタンス化プロセスを開始します。
その後、HDAアセットが構築されるまで制御フローは停止します。asyncパラメータがfalseの場合は、それまでユーザ入力がブロックされます。 HDAアセットがクックを完了すると、実行フローが再開します。
このノードには3つの主な出力パラメータがあります。
クックが成功したかどうかを示すSuccess、HEU_HoudiniAssetRoot
への参照である Output HDA Root 、そして通常オペレーションを実行するところであるHEU_HoudiniAsset
へのヘルパーの Output HDA です。
これは、EverGreen HDAをインスタンス化し、葉を赤に設定するVisual Scripting Graphの例です。
Note
HDAに必須の入力がある場合、Success出力は無視した方がよい場合があります。無効な入力数のために、常にfalseとなるからです。
HDAの変更 ¶
既存のHDAを変更したい場合がよくあります。
現在のワークフローでは、HDA(HEU_HoudiniAssetRoot
コンポーネントを含む)をグラフのScene Variableとして持ちます。
次に、Scene Variables参照を使用して、Events/Editor/Houdini Engine/Houdini Engine Modify HDAノードにそれを取り付けます。
このノードは、Unity Editor内から実行フローをトリガーできる、ManualUnitクラスの単なるラッパーです。
HEU_HoudiniAsset
タイプのOutput HDAパラメータを使用して、アセットを好きなように変更できます。
以下に、EverGreen HDAを受け取り、葉をランダムな色に変更するグラフの例を示します。