OpScript

Op APIへのLuaベースのインターフェース。OpScriptインターフェースの詳細については、 Help > Documentation

接続タイプ

接続名

関数

入力

i0

Op APIでOpsを指定するノードグラフ内の場所。

 

コントロール(UI)

デフォルト値

関数

CEL

なし

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

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

脚本

なし

Edit in <editor>... -で設定された外部エディターを開きますPreferencesexternalTools > Editor、ブロックせずにOpScriptノードのLuaスクリプトを編集するためKatanaのユーザーインターフェース。Katana編集中のテキストファイルを監視し、それらが変更されたことを検出すると、それに応じてOpScriptノードを更新します。

lua -実行するluaスクリプトが含まれています。

executionMode

すぐに

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

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

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

マルチ入力として表示

無効

有効にすると、複数の入力をこのOpScriptノードに接続できます。

When executionMode is: immediate

適用する

CELに一致する場所

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

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

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

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

inputBehavior

インデックス別

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

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

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

When applyWhere is: at specific locations

ロケーション

/ root / world / location

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

locationパラメータオプションは、 ドロップダウンメニュー。

詳細については、次のシーングラフロケーションウィジェットタイプを参照してください。 共通パラメーターウィジェット

When executionMode is: deferred

適用する

解決中に

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

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

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

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

modifierNameMode

ノード名

遅延OpScriptは、 opsグループ。デフォルトでは、ノードの名前がサブグループに使用されます。ノード名はプロジェクト内で一意である必要があるため、結果の属性名は変更される場合があります。ほとんどすべての場合、それは重要ではありません。使用する場合は、使用する固定名を指定できます。

When modifierNameMode is: specified

modifierName

修飾子

属性グループの名前を下に設定しますopsこの遅延スクリプトの説明に使用します。

When executionMode is: deferred, during op resolve

resolveIds

なし

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

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

recursiveEnable

番号

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

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

When recursiveEnable is: yes

disableAt

なし

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

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

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

When executionMode is: deferred, during Katana look file resolve

recursiveEnable

番号

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

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

When recursiveEnable is: Yes

disableAt

なし

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

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

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