用語集Katana条項

この用語集では、全体を通して使用される最も重要な用語の簡単な説明を提供しますKatanaアプリケーションとドキュメント。

これらの中核用語の知識は、あなたが方法を理解するのに役立ちますKatanaデータをより明確に機能させ、処理します。また、 Katanaドキュメンテーション。

Katanaコア用語

ノード

Nodesで使用される単位ですKatana構築するためのインターフェースRecipeのためにKatana事業。Nodes特徴パラメーターそれらの動作を制御するために使用できます。Nodes作成して接続できますKatanaノードグラフ UIのタブ。Pythonスクリプトを使用して変更することもできます。 NodegraphAPI

Katana多くの船組み込みタイプのノード、 だがカスタムノードタイプ Pythonスクリプトを使用して作成することもできます。付属のノードタイプには2つの主要なグループがありますKatana

  • 3D nodesで検査できるシーングラフを生成するKatanaシーングラフタブ。
  • 2D nodesで表示できる画像を生成しますKatanaモニタータブ。

Nodesそしてそれらのパラメータは、対応するものを効果的に表し、制御しますOpsによって処理されるOpグラフを形成するKatanaで表示および検査できるシーンデータを生成するジオメトリライブラリKatanaのシーングラフと属性タブ。

注意:  ノードの操作の詳細については、 Katana UI、ご覧ください、 ノードグラフの編集。Pythonスクリプトを使用したノードの操作については、関連する記事をご覧くださいノードの操作のセクションKatana開発者ガイド。

ノードグラフ

Node GraphsKatanaレシピの一部である接続ノードのKatana事業。のノードnode graphs作成して接続できますKatanaNode Graph UIのタブ。また、Pythonスクリプトを使用して、 NodegraphAPI Pythonパッケージ。

パラメーター

Parametersの一部ですノード、通常、それぞれのノードの動作を制御します。ParametersノードのKatanaパラメータタブ UIで、ノードの編集フラグを設定することにより、 ノードグラフタブ。また、Pythonスクリプトを使用して、 NodegraphAPI。パラメーターの値は、次のように決定される定数のいずれかです。 Python式、またはアニメーションカーブによって駆動されます。

レシピ

RecipesKatanaノードグラフ接続のnodesそれはの一部ですKatana事業。Recipes通常、シーングラフで3Dシーンデータを作成するために実行されるステップまたは実行される操作、または2D画像を作成するために実行される画像操作を表します。 Katanaモニタータブとファイルに書き出されます。

注意:  詳細についてはRecipesKatana、 見る作成するKatana事業

事業

A KatanaProjectすべての合計ですノードそして彼らパラメータープロジェクトのノードグラフで表現されるレシピを形成します。Projectsに保存されていますKatanaプロジェクトファイル.katanaファイル拡張子。

注意:  プロジェクトの操作の詳細については、をご覧ください。 プロジェクトを作成する

Ops

Ops 3Dシーンデータを作成および操作する操作のビルディングブロックです。 Katana、およびシーングラフの任意の時点で検査できるKatanaノードグラフ特定のノードに表示フラグを設定することにより。Ops Opタイプのインスタンスであり、C ++で記述されたプラグインで、特定のKatana内部の仕組みを定義するAPI: Op API。C ++ Opsで利用可能な一部の関数は、 Katana開発者ガイド

さまざまなノードタイプと同様に、 Katana多くの組み込みタイプが付属していますOps、ただし、カスタムOpタイプは、C ++プログラミングとOp APIを使用して作成することもできます。ノードの表示フラグが設定されると、ノードは対応するものについて照会されますOps。3Dシーンデータの作成または変更に関するノードの動作は、単一のOp、しかしまたいくつかによって定義することができますOps OpチェーンまたはOpグラフに配置されます。

操作引数

Op Argumentsの動作を制御するOpsの効果を定義するnodesKatanaレシピ。彼らは大体対応するparameters 3Dノード。ノードのパラメーターを変更すると、対応するOp引数が更新されます。ノードまたはダウンストリームのノードが表示されている場合、シーンは再作成されます。

料理

Cooking実行する行為です Opsのノードに対応するKatanaレシピ、作成するためにシーングラフ場所そして彼ら属性、その後で表示および検査できますScene GraphそしてAttributesタブ。ビューフラグを設定するときノードの中にノードグラフ、そのノードとその上のすべてのノードに対応するOpsが実行/評価/調理され、ノードグラフのそのポイントでシーングラフが生成されます。技術的には、 cook()対応する各Opタイププラグインの関数は、結果のシーングラフの場所を作成または変更するために呼び出されます。

フィルター

Filtersの古い同等物ですKatana 1.Xリリース、 OpsKatana 2.Xリリース以上。これらは、3Dシーンデータを作成および操作する操作のビルディングブロックを表しますKatana 1.Xリリース。

遅延評価

の重要な側面の1つKatanaの処理パラダイムは、結果が必要な場合にのみ操作が評価されるということです。

たとえば、 Ops特定に対応するノードは、ただ調理済みノード自体またはその下流のノードが表示されているとき、つまり、表示フラグが設定されているとき。のコンテキストでScene Graphタブ、シーングラフのデータ場所シーングラフ階層が展開されてツリービューウィジェットに表示される場合にのみ生成されます。

で作業するときKatanaのAPI、 lazy evaluation特定の関数呼び出しの結果に影響を与える可能性があります。

注意:  この例については、ナレッジベースの記事を参照してくださいGeolib3クライアントを使用してPythonでシーングラフの場所の属性をクエリする方法

Lazy evaluationの側面にも適用されますKatanaのUI。 凍結融解 UIはユーザーの操作に応じて必要な場合にのみ更新されます。

グラフの状態

Katana維持するGraph State上に移動するときのデータ構造ノードグラフ。現在のフレームやシャッタータイミングなどの情報が含まれており、 Ops によって表されますノードいつ料理そのシーングラフ。ノードは、から読み書きできますGraph State入力の識別の一部として。

たとえば、 TimeOffset nodeは、現在の時間を読み取り、inputFrameパラメーターで制御されるように、ある時間だけ増分または減分します。変更されたGraph State次に、Opsをクッキングするために上記のノードに渡されます。を理解することが重要ですGraph Stateグラフを下に流れるシーンデータとは異なり、情報はノードグラフを上に流れます。

動作するPython関数Graph Stateに文書化されていますKatana開発者ガイド

グラフ状態変数

Graph State Variables (時々と略されるGSV)基本的に、ユーザーがグラフの状態、で設定できます事業またはノードレベル。その後、それらは他のノードによって参照および操作され、ノードのグループと全体が強力なワークフローを可能にします。 ノードグラフブランチは簡単に有効化および無効化できます。

注意:  詳細については、 グラフ状態変数

プロジェクトレベルGSVとして知られていますGlobal Graph State Variables、およびノードレベルGSVとして知られていますLocal Graph State Variables。次のタイプのノードは、ローカルでの作業および/またはローカルの変更に使用できますGSV

GenericAssign

GenericAssignは、高度で強力なコンセプトですKatana、 その中でパラメーターノード特定の属性オン場所の中にシーングラフ。このようなパラメーターは、対応する属性の値を効果的に制御します。のウィジェットParametersタブには、着信シーンの属性値を表示できるため、ユーザーはそれらの属性値を検査および変更できます。

使用するノードタイプの例GenericAssignベースのパラメーターはRenderSettingsノードタイプ。のパラメーターRenderSettingsノードは、 renderSettings上のグループ属性/rootシーングラフ内の場所。のパラメータの値を設定するときRenderSettingsノード、対応する属性renderSettingsグループが設定されます。接続するときRenderSettings着信へのノードノードグラフ、ノードのパラメーターのウィジェットは、対応する属性の値を示します。

パラメーターのウィジェットの一部である状態バッジは、それぞれのパラメーターの値の状態を示し、対応する属性が編集中のノードの上流のノード(着信値)によって特定の値に設定されるか、ノード自体によって設定されるかを示します(ローカル値)、または属性が特定の値に設定されていないかどうか。この場合、代わりにデフォルト値を使用します。

シーングラフ

の一部である3DノードKatanaレシピと呼ばれるデータの階層セットを生成しますScene Graph、でインタラクティブに検査することができますKatanaScene GraphそしてAttributes UIのタブ。レンダラーまたは任意の出力プロセスに表示できます。

シーングラフに保持できるデータの例には、次のものがあります。

  • 幾何学
  • 粒子データ
  • ライト
  • シェーダーのインスタンス
  • レンダラーのグローバルオプション設定。

注意:  詳細についてはScene Graph、 見るシーングラフの使用

場所

Locationsを構成する単位はScene Graph階層。他の多くの3Dアプリケーションはこれらをノードと呼びますが、 Katana彼らはとの混乱を避けるために場所と呼ばれますノードで使用されるノードグラフLocations名前と、シーングラフ内のすべての祖先の場所の名前を使用して一意に識別できます。これは、シーングラフの場所のパスを形成します。次に例を示します。
/ root / world / geo / pony

注意:  操作方法のその他の例についてはlocationsシーングラフで、 シーングラフの使用そしてシーングラフの操作

属性

Attributes保持されるデータのコンテナです場所の中にシーングラフ。属性に格納されるデータの例は次のとおりです。

  • 4x4マトリックスなどの3D変換
  • ジオメトリの頂点位置、
  • シェーダーのインスタンスの値設定。

Attributes選択したシーングラフの場所は、 KatanaAttributesタブ。ただし、値は以下によって決定されるため、編集されません。 ノードそしてパラメーターKatana事業

注意:  ロケーションが持つことができる一般的な属性の例については、 属性の規則の中にKatana開発者ガイド。
属性の作成、操作、削除の詳細については、 属性の使用

属性タイプ

さまざまな種類があります属性さまざまな基本タイプのデータの場合:

  • 整数
  • 浮動小数点数
  • 倍精度数
  • ひも

これらのタイプのデータ属性に加えて、属性はグループ属性を使用して階層にグループ化できます。

特別なタイプの属性、 null属性は、特定の属性を設定されていないものとして宣言するなど、特定の場合に使用されるため、代わりに属性のデフォルト値が使用されます。

Katana UI用語

バリューポリシー

Value PoliciesKatanaのウィジェットに表示するデータを提供するKatanaのUI。Value policies基になるデータソースの間にレイヤーを提供します。 パラメーターノードの中にノードグラフドキュメント、および次のようなタブ内のUIウィジェットParametersタブ。さまざまな種類がありますvalue policies、特定のデータソースと特定のユースケースに合わせて調整されています。

のPython基本クラスvalue policiesQT4FormWidgets.AbstractValuePolicyValue policies基になるデータソースのイベントからQtウィジェットイベントへの変換を処理します。たとえば、 NodegraphAPIコール。

パラメータポリシー

Parameter PoliciesKatana価値政策間に層を提供するパラメーターノードの中にノードグラフ文書とウィジェットParametersタブ。これらのウィジェットはパラメーターの値を表示し、それらのパラメーター値を編集するために使用できます。

Parameter policiesたとえば、カスタムタイプのノードのパラメーターUIを開発する場合に最も関連します。 SuperTools、PythonスクリプトAPIを使用します。

注意:  SuperToolsでこれを使用する方法の例については、それぞれのEditor.py例のファイルSuperToolsその船Katana下:
$KATANA_ROOT/plugins/Src/Resources/Examples/SuperTools

パラメータポリシーのPython基本クラスはUI4.FormMaster.BaseParameterPolicy。それはから派生していますAbstractValuePolicyクラス。通常、パラメータポリシーは、特定のノードの特定のパラメータに対して、 NodegraphAPI.Parameterにそれぞれのパラメーターを表すインスタンスUI4.FormMaster.CreateParameterPolicy()関数。これは、から派生したクラスのインスタンスを返しますBaseParameterPolicyクラス。

属性ポリシー

Attribute PoliciesKatana間に層を提供する属性場所の中にシーングラフおよびウィジェットAttributesこれらの属性の値を表示するタブ。

Attribute policiesによって内部的に作成されますKatanaで表示する属性データを提供するAttributesタブ内の場所Scene Graphタブが選択されています。属性ポリシーを手動で作成する必要はほとんどありません。

Geolib3ベースの属性ポリシーのPython基本クラスはUI4.FormMaster.FnAttributePolicy.AttributePolicy。それはから派生していますAbstractValuePolicyクラス。

GenericAssignParameterPolicy

GenericAssignParameter PoliciesGAPP)でKatanaパラメータポリシー間に層を提供するGenericAssign-パワードパラメーターノードの中にノードグラフ文書とウィジェットParametersタブ。これらは、パラメータポリシーと属性ポリシー

  • GenericAssign aspectGAPPの結果を受け取る料理そのシーングラフそれはそれぞれの上流のノードによって生成されますGenericAssignGeolib3ランタイムからイベントを受信する組み込みGeolib3クライアント経由の電源ノード。これは、属性ポリシーがシーングラフの場所の属性からデータを提供して、 Attributesタブ。
  • Parameter policy aspectGAPPsのパラメータウィジェットで使用するクックされた属性データを提供しますParametersタブ。これは、パラメータポリシーがノードのパラメータからデータを提供して、 Parametersタブ。

凍結融解

Freezingという意味ですKatana基になるデータの変更時に通常処理される特定のイベントは一時的に無視されます。に適用されます価値政策、タブ内のKatanaアプリケーションウィンドウ。これにより、変更が行われたときに不必要に更新されないことが保証されますノードグラフ文書またはいつシーングラフロケーションデータは調理済み、たとえば、ウィジェットまたはタブが実際にユーザーに表示されない場合。

Thawingvalue policiesまたはタブは凍結の逆です:の処理後Katana特定のイベントが一時的に中断されているか、以前に開始されたことがない場合、解凍とは、そのようなイベントの処理と結果としてのUIコンポーネントの更新が再開または開始されることを意味します。

Freezingそしてthawing特定のハンドラを登録および登録解除することで実装されますKatanaそれぞれの値ポリシーまたはタブが凍結されているかどうかに応じて、イベントタイプ。

注意:  コールバックとイベントハンドラーの登録については、 コールバックとイベント開発者ガイドで。

通常、ユーザーがタブ内のペインであるタブから次のタブに切り替えると、 Katanaウィンドウでは、以前に表示されていたタブがフリーズされ、新しく表示されたタブが解凍されます。したがって、非表示になったタブのウィジェットは、 Katanaイベントですが、新しく表示されるタブのウィジェットはそうです。で作業するときパラメータポリシーノードのカスタムタイプのパラメーターUIのコンテキストで、たとえばSuperTools、Pythonコールバック関数をそのようなに追加する必要があることに注意することが重要ですvalue policyポリシーの基になる値が変更されたときに通知を受けるため。そのようなコールバックが値ポリシーに追加されない場合、値ポリシーは凍結されていると見なされます。

注意:  詳細については、および遅延評価 の中にKatanaコア用語用語集のセクション、およびGenericAssignParameterPolicy UI用語セクション。

ScenegraphManager

ScenegraphManager PythonモジュールはNodes3DAPI Pythonパッケージ。の単一のインスタンスを維持しますScenegraphいくつかの追跡を担当するクラスワーキングセットの場所のオープン、クローズ、選択、およびピン状態を維持しますKatanaシーングラフ

ピン留めの詳細については、 ビューアーに表示されるものを変更する

Scenegraphインスタンスを呼び出すことで取得できますScenegraphManager.getActiveScenegraph()。インスタンスは、たとえば、現在選択されているシーングラフの場所のパスのリストにアクセスするために使用できます。

sg = ScenegraphManager.getActiveScenegraph()

print(sg.getSelectedLocations())

Scenegraphクラスは選択された履歴も保持しますシーングラフの場所、内部を使用してSelectionHistoryクラス、を使用してユーザーが履歴をステップスルーできるようにするためHistory ForwardそしてHistory BackwardのコマンドViewerタブ。

Katanaレンダリング条件

プレビューレンダリング

A Preview RenderのタイプですInteractive Render、から起動されたレンダーを意味しますKatana UIセッション。レンダリングされた画像と進行状況バーが表示されますKatanaMonitorタブ。でPreview Render、レンダリングされたイメージが完了すると、レンダラープロセスが終了します。これはLive Render、レンダラープロセスは維持されます。

Preview Rendering歴史的に、初期バージョンのインタラクティブレンダリングと呼ばれてきましたKatana

注意:  詳細についてはPreview Rendering、 見るレンダリングを実行する

ライブレンダリング

A Live RenderのタイプですInteractive Render、から起動されたレンダーを意味しますKatana UIセッション。レンダリングされたイメージが表示されている間、レンダラープロセスが維持されます。 KatanaMonitorタブ。でノードのパラメーターを変更する場合Katanaプロジェクトでは、これらの変更がレンダラーに通知され、レンダリングされたイメージがMonitorタブ。

制限することは可能ですシーングラフの場所更新はレンダラーに送信されますLive Renderセッション、を使用してLive Render UpdatesKatanaScene Graphタブ。これは通常、非常に大きなプロジェクトを生成するために使用されますシーングラフ

Live Rendering歴史的に、初期バージョンの再レンダリングと呼ばれていましたKatana

注意:  詳細についてはLive Rendering、 見るレンダリングを実行する

ディスクレンダリング

A Disk Renderは、レンダリングされたイメージがディスク上のファイルに書き込まれ、その後にロードされるタイプのレンダリングですMonitorレンダリングが終了したときにタブ。の進行状況バーMonitorタブは更新されませんDisk Render進行中です。

Disk Rendering歴史的には、初期バージョンのホットレンダリングと呼ばれてきましたKatana

ながらプレビューそしてライブレンダリングオプションは、任意のノードのコンテキストメニューから利用できます。 Disk RenderからのみトリガーできますRenderノード。

注意:  詳細についてはDisk Rendering、 見るレンダリングタイプ

インタラクティブレンダー

Interactive Renderから起動されたレンダーですKatana UIセッション。で利用可能なインタラクティブレンダーには2つのタイプがありますKatana

インタラクティブレンダーフィルター

Interactive Render Filters (一般的に略称IRF)ユーザーが共通を設定できるようにするレシピの変更 interactive renders、意味プレビューレンダリングそしてライブレンダリング、追加することなくノードのさまざまなポイントでそのような変更を行う事業レシピ。あIRFレシピへの複数の変更で構成できます。これは、インタラクティブレンダーが開始されるノードの最後にノードを追加することと同じです。

IRFで定義されていますInteractiveRenderFiltersノードで選択的にアクティブ化および非アクティブ化できますInteractive Render Filters現れる。このポップアップにアクセスするには、 Interactive Render Filtersボタンの上部にKatanaインターフェース。

注意:  Interactive Render Filters無視されますディスクレンダリング

の使用例IRFsは、ディスクレンダーに影響を与えることなく、インタラクティブレンダーのレンダー解像度を下げるように設定することで、そのようなレンダーのデバッグをより迅速にします。によって設定できる変更のその他の例IRFには、アンチエイリアシング設定、シェーディングレートの変更、またはライトバウンスの数が含まれる場合があります。

注意:  設定の詳細についてはInteractive Render Filters、 見るインタラクティブレンダーフィルターのセットアップ
ナレッジベースの記事も参照できますインタラクティブレンダーフィルターによるプレビューの効率の向上

レンダリングの依存関係

からレンダーを開始するときRenderノード、レンダーが依存する他のレンダーパスは、依存関係を使用してレンダーすることにより、ディスクに自動的にレンダーできます。

歴史的に、この機能はシャドウマップを作成するために使用され、メインレンダーパスに使用されていました。

注意:  詳細については、 レンダリングの依存関係