GenericOp

GenericOpノードを使用すると、名前付きの特定のOpを実行できます。これは、開発中にプラグインとして記述されたカスタムOpを実行したり、SuperToolsおよびマクロ内で使用したりする場合に特に便利です。詳細については、 Op API

接続タイプ

接続名

関数

入力

を押して、番号付きの入力ポート(i0、i1、i2)を追加しますノード内。

ノードグラフのさまざまな部分に設定する入力ポート。

 

コントロール(UI)

デフォルト値

関数

opType

なし

実行するOpのタイプ(AttributeSetなど)を指定します。

opArgs

なし

から新しいopArgsパラメーターを追加しますAddドロップダウンリスト。利用可能なオプションの詳細については、 ユーザーパラメータの追加

ストリング

グループ

数値配列

文字列配列

フロートベクトル

カラー、RGB

カラー、RGBA

ボタン

ツールバー

TeleParameter

ノードドロッププロキシ

addSystemOpArgs

番号

有効にすると、フレームやシャッターのタイミングなど、グラフ状態のタイムスライスからの情報を含む「システム」opArgが追加されます。これは一部のOpsでのみ必要です。

executionMode

すぐに

Opをいつ実行するかを決定します。

immediate -スクリプトは、で指定された場所で実行されますapplyWhereノードグラフ内のこのノードのポイントで評価されるパラメータ。

deferred -スクリプトはこのノードによってセットアップされますが、実際には、ノードグラフ内の後続のノードまで実行されません。 applyWhenパラメータ。

executionMode: immediate

適用する

CELに一致する場所

スクリプトの実行場所を決定します。

at all locations -ノードグラフのすべての場所。

at specific location -で指定された場所のみlocationパラメータ。この場所が存在しない場合、自動的に作成されます。

at locations matching CEL -ノードグラフ内のCELステートメントに一致する場所のみ。

resolveIds

なし

いつexecutionModeに設定されています immediate、スペースで区切られた文字列のリストを指定して、このスクリプトが少なくとも1つの一致する「resolveId」を含むOpリゾルバーによってのみ解決されることを示します。これは、評価の順序をより細かく制御するための高度な機能です。

役立つresolveIdsはimplicit_prepocessです。これは、MaterialResolveやConstraintResolveなどの他の暗黙的なリゾルバーが実行される前に、最初の暗黙的なリゾルバーで実行されます。

inputBehavior

インデックス別

ノードの入力ポートを基になるOpの入力にマップする方法を制御します。このパラメーターは、ノードに1つ以上がある場合にのみ意味がありますinvalid input ports -出力ポートに接続されていないポート、またはデータを提供しない出力ポートに接続されているポート。

に設定されている場合only valid、基になるOpに渡す入力を決定するときに、ノードの有効な入力ポートはスキップされます。

に設定されている場合by index、ノードのすべての入力ポートは、Opが見る入力のリストに表示されます。無効な入力は、タイプのOpとして表されますno-op

適用場所:特定の場所

ロケーション

/ root / world / location

作成する場所(存在しない場合)。それ以外の場合、スクリプトが実行されるシーングラフの場所。

ロケーションウィジェットのパラメーターの詳細については、 共通パラメーターウィジェット

applyWhere: at locations matching CEL

CEL

なし

シーングラフの場所は、コレクション式言語(CEL)を使用して指定されます。のCELをクリックすると、パラメータオプションを使用できますAdd Statements

詳細については、ドキュメントのHTMLページにあるCELリファレンスドキュメントを参照してください( 助けて > ドキュメンテーション)またはCELステートメントウィジェットタイプ共通パラメーターウィジェット

executionMode: deferred

適用する

解決中に

スクリプトをいつ実行するかを決定します。

during op resolve -スクリプトとその引数は、OpResolveノードによって後で実行される属性として追加されます。Opがノードグラフに配置された明示的なOpResolveノードによって実行されない場合、レンダリング時にレンダリング時に自動的に実行されますimplicit resolvers

during material resolve -スクリプトとその引数は、以下の属性として追加されますmaterial.scenegraphLocationModifersグループ属性。これは主にマテリアルシーングラフの場所を対象としており、マテリアルが割り当てられているすべての場所で実行される手続きプロセスをマテリアルで指定できます。スクリプトは、マテリアル解決プロセスの一部として実行され、マテリアルシェーダーの初期値がその場所で作成された直後に実行されます。その使用例には、シェーダパラメータのプロシージャルコントロールのランダム化または構築が含まれます。

during katana look file resolve -スクリプトとその引数はScene GraphLocationModifersグループ属性の下に属性として追加され、LookFileResolveノードまたはLookFileResolveノードが存在しない場合は最初の暗黙的なリゾルバーによって評価されます。

CEL

なし

シーングラフの場所は、コレクション式言語(CEL)を使用して指定されます。のCELをクリックすると、パラメータオプションを使用できますAdd Statements

詳細については、ドキュメントのHTMLページにあるCELリファレンスドキュメントを参照してください( 助けて > ドキュメンテーション)またはCELステートメントウィジェットタイプ共通パラメーターウィジェット

名前

GenericOp

Opタイプと引数を保存する属性グループの名前。

inputBehavior

インデックス別

ノードの入力ポートを基になるOpの入力にマップする方法を制御します。このパラメーターは、ノードに1つ以上がある場合にのみ意味がありますinvalid input ports -出力ポートに接続されていないポート、またはデータを提供しない出力ポートに接続されているポート。

に設定されている場合only valid、基になるOpに渡す入力を決定するときに、ノードの有効な入力ポートはスキップされます。

に設定されている場合by index、ノードのすべての入力ポートは、Opが見る入力のリストに表示されます。無効な入力は、タイプのOpとして表されますno-op

applyWhen: during op resolve

recursiveEnable

番号

非即時状態で適用する場合、これを有効にすると、割り当てられた場所の下のすべての場所でOpが実行されます。一般に、これは同等の再帰CELステートメントを使用するよりも効率的です。

オーバーライドすることもできますops.*.recursiveEnableこれらの場所での評価を除外するには、ツリーのより深い場所に属性を設定します。これは、可視リンク属性またはライトリンク属性の動作に似ています。

recursiveEnable: yes

disableAt

なし

このCELステートメント以下のロケーションの実行は無効になります。大規模なシーン階層の場合、多くのリーフ位置で評価を有効にしてより小さなサブセットに適用しないようにするよりも、多くの場合、これは安価です。

シーングラフの場所は、 disableAtクリックしてパラメータオプションAdd Statements

詳細については、ドキュメントのHTMLページにあるCELリファレンスドキュメントを参照してください( 助けて > ドキュメンテーション)またはCELステートメントウィジェットタイプ共通パラメーターウィジェット

resolveIds

なし

いつapplyWhenに設定されていますduring op resolve、スペースで区切られた文字列のリストを指定して、このOpが少なくとも1つの一致する「resolveId」を含むOpリゾルバによってのみ解決されることを示すことができます。これは、評価の順序をより細かく制御するための高度な機能です。

役立つresolveIdsはimplicit_prepocessです。これは、MaterialResolveやConstraintResolveなどの他の暗黙的なリゾルバーが実行される前に、最初の暗黙的なリゾルバーで実行されます。

applyWhen:刀のルックファイルの解決中

recursiveEnable

番号

非即時状態で適用する場合、これを有効にすると、割り当てられた場所の下のすべての場所でOpが実行されます。一般に、これは同等の再帰CELステートメントを使用するよりも効率的です。

オーバーライドすることもできますops.*.recursiveEnableこれらの場所での評価を除外するには、ツリーのより深い場所に属性を設定します。これは、可視リンク属性またはライトリンク属性の動作に似ています。

recursiveEnable: yes

disableAt

なし

このCELステートメント以下のロケーションの実行は無効になります。大規模なシーン階層の場合、多くのリーフ位置で評価を有効にしてより小さなサブセットに適用しないようにするよりも、多くの場合、これは安価です。

シーングラフの場所は、 disableAtクリックしてパラメータオプションAdd Statements

詳細については、ドキュメントのHTMLページにあるCELリファレンスドキュメントを参照してください( 助けて > ドキュメンテーション)またはCELステートメントウィジェットタイプ共通パラメーターウィジェット