Houdini 19.0 ノード LOPノード

SOP Modify

USDジオメトリをSOPジオメトリに変換し、そのジオメトリに対してこのノード内部のSOPサブネットを実行し、その結果をUSDオーバーライドに戻します。

On this page
Since 17.5

概要

このノードは、RBDシミュレーションに基づいてトランスフォームをアニメーションさせたり、既存ジオメトリにPrimvarsやアトリビュートを追加したり、ジオメトリを粉砕したり、既存サーフェス上に散乱するようにインスタンスを追加するなどのことをする際に使用します。

このノード上のトップレベルコントロールは、主にこのノードの中で追加したLOP Import SOP/Unpack USD SOPとSOP Import LOPからプロモートさせたパラメータを反映させています。 このノードの中に入ってSOPネットワークを編集してソースジオメトリを変更した後でそれをLOPsに戻すことができます。

How to

  1. SOP Modifyノードを作成し、上流のノードを入力に接続します。

  2. ジオメトリを編集/形状変更したいのか、または、ピースのトランスフォームだけを変更したいのかを決めます。

    • デフォルトでは、サブネットの入力ジオメトリはパックUSD Primになっています。 パックUSD Prim内のポイントがUSD Primを表現していて、そのポイント位置と標準ポイントインスタンスアトリビュートが各Primのトランスフォームを表現しています。 ポイント位置とそれらのアトリビュートを修正することで、パックUSD PrimをアンパックすることなくそれらのPrimを移動/回転/スケールさせることができます(これは、RBDシミュレーションの扱い方と共通しています)。

    • ジオメトリの形状を変更したいのであれば、SOP Modifyノードの Unpack USD Primitives to Polygons パラメータを有効にしてください。

    • ジオメトリの形状を変更したいものの、 すべて のジオメトリをポリゴンとして抽出したくないことがあります。 その場合は、 Unpack USD Primitives to Polygons パラメータを無効のままにして、サブネット内でUnpack USD SOPを使用して、パックUSD Primから一部のジオメトリセットのみを抽出します。

  3. ネットワークエディタで、SOP Modifyノードをダブルクリックして中に入ります。

    Sub-Network Input #1の出力が修正するSOPジオメトリです。

  4. ノードを接続してジオメトリを修正します。

  5. ノードチェーンの最後にOutput SOPを接続します。

  6. ネットワークエディタでUを押してLOPネットワークに戻ります。

Tips

  • ジオメトリの形状を編集したつもりが、SOPノードがそのジオメトリに何も影響していないようでしたら、そのジオメトリのタイプを確認してください。 Unpack USD Primitives to Polygons パラメータを有効にするのを忘れていた場合、そのジオメトリはパックUSD Primの中にあるのでSOPノードで編集することができません。

    SOP Modifyノードの Unpack USD Primitives to Polygons パラメータを有効にするか、または、Sub-Network Input #1の後にUnpack USD SOPを挿入してください。 Unpack USD SOPのパラメータエディタで、 Geometry Type を“Polygons”に設定します。

  • Unpack USD Primitives to Polygons を有効にするか、または、サブネット内でUnpack USDノードを追加すれば、アンパックされたポリゴンには、ポリゴンがアンパックされてからUSD Primまでのローカルからワールドのトランスフォームが入ったusdxform matrixアトリビュートが追加されます。

  • SOP Modifyの一般的な用途は、USD Prim上にPrimvarsを生成することです。これをするには、 Topology Attributes パラメータをNoneに設定し、 Unpack USD Primitives to Polygons チェックボックスをオンにします。このモードでは、SOPジオメトリのトポロジーを変えたり、SOPジオメトリの並びを変えないように注意してください。たいていのSOPオペレーションではそのようなことが起こり得ます。例えば、For Each SOPMergeモードがそうです。そのようなSOPを使用する時、たいていの場合は問題のあるSOPの前にidアトリビュートを生成して、後でAttribute Copy SOPでそのid値を使用して新しいアトリビュート値を元のプリミティブ順にコピーすることができます。

パラメータ

Export to SOPs

以下のパラメータは、編集用にUSDジオメトリをSOPsに変換する方法を制御します。

Primitives

このノードを動作させるPrim(s)。 Scene Graph Tree ペインからPrim(s)をこのテキストボックスにドラッグすることで、それらのパスを追加することができます。 または、このテキストボックスの隣にある 再選択ボタンをクリックすることで、ビューア内でPrim(s)を選択することができます。 他にも、この再選択ボタンを⌃ Ctrlクリックすることで、ポップアップツリーウィンドウからPrim(s)を選択することができます。 コレクション内のすべてのPrimsのマッチング(/path/to/prim.collection:name)といった高度なマッチングには、プリミティブパターンを使用すると良いでしょう。

Path Attribute

有効にすると、オリジナルのUSD Primのシーングラフパスを含んだSOP Primitiveアトリビュートが作成されます。

Name Attribute

有効にすると、オリジナルのUSD Primの名前を含んだSOP Primitiveアトリビュートが作成されます。

Import Frame

LOPノードがクックされるフレーム。 アニメーションジオメトリを取り込む時は、ここに$FFを設定すると良いでしょう。 静的ジオメトリに関しては、ここに$RFSTARTといった定数値を設定した方が非常に効率的です。

Traversal

オプションで、USD階層をもっと深く走査して、特定の基準を満たした選択 Primitives の子Primsを読み込むことができます。

Note

プリミティブパターン(例えば、descendants自動コレクションを使用)でも同様のことが可能です。

No Traversal

Primitives パターンに合致したUSDプリミティブ毎にUSDパックプリミティブを作成します。

Components

Kindがcomponentのプリミティブ毎にUSDパックプリミティブを作成します。

Gprims

GPrim毎にUSDパックプリミティブを作成します。

Groups

groupタイプのプリミティブ毎にUSDパックプリミティブを作成します。

Display As

USDパックプリミティブをビューポートに表示する方法。

Full Geometry

フルジオメトリがビューポートに表示されます。

Point Cloud

ジオメトリのポイントのみが表示されます。これはメモリをあまり消費せず、レンダリングが速いです。

Bounding Box

ジオメトリの境界ボックスのみをビューポートに表示します。

Centroid

境界ボックスの中心に単一ポイントを表示します。

Hidden

ジオメトリをビューポートに表示しません。

Pivot Location

パックプリミティブのポイント位置を指定します。

Centroid

USD Primの境界ボックスのワールド位置の中心を使用します。

Origin

USD Primの原点のワールド位置を使用します。

Purpose

USD階層の区分をマークしてそれを特定の目的で使用することができます。 USDパックプリミティブをアンパックした時に、デフォルトのPurposeまたは指定したPuroposeのどれかにマークされた区分のみが走査されます。

Unpack USD Primitives to Polygons

パックUSD Primをポリゴンに変換した後に、それを編集できるようにサブネットワークに送信します。 ピースのトランスフォームのみを修正したいのであれば、パックUSD Primのポイント上のアトリビュート値を編集します。 インポートしたジオメトリの形状を変更したいのであれば、これを有効にしてください(または、サブネット内の頭にUnpack USD SOPを接続して、 Geometry Type を“Polygons”に設定してください)。

Transfer Attributes

通常のHoudiniジオメトリにアンパックする時、ここには、USD Packed Prim上の(USDアトリビュートでは なくて ) 既存のHoudiniジオメトリアトリビュート に合致させるパターンのリストを指定します。これに合致したアトリビュートが出力ジオメトリ上に転送されます。 例えば、HoudiniのRBDシミュレーションをUSD Packed Primsに書き出した時に、位置と回転のアトリビュートをPacked Prims上に書き込んでいたのであれば、 抽出したジオメトリ上にそれらのアトリビュートを転送することができます。

Import Primvars

通常のHoudiniジオメトリにアンパックする時、ここには、Houdiniジオメトリアトリビュートに変換したいUSD Primvarsに合致させるパターンのリストを指定します。

Import Attributes

通常のHoudiniジオメトリにアンパックする時、ここには、( Import Primvars で指定した Primvars に加えて)Houdiniジオメトリアトリビュートに変換したいUSDアトリビュートに合致させるパターンのリストを指定します。

これらのパターンは、 カスタム USDアトリビュートにのみマッチングされます。 スキーマの一部になっているUSDアトリビュートには、特別なハンドリングがあります(例えば、メッシュPrim上のfaceVertexIndicesアトリビュートは、その結果のポリゴンのトポロジーに変換されます)。

Primvarsとは違い、カスタムアトリビュートでは補間モードを指定しません。 カスタムアトリビュートの値が配列の場合、このノードは、その配列内のエレメントの数に基づいてHoudiniのアトリビュートレベル(point, vertex, primitive, detail)を推測します。

Non-transforming Primvars

通常のHoudiniジオメトリにアンパックする時、ここには、 非トランスフォーム Houdiniジオメトリアトリビュートに変換したいUSD Primvarsに合致させるパターンのリストを指定します。

Translate ST primvar to UV

一般的に、USDはstという名前のPrimvarにテクスチャ座標を格納するのに対して、Houdiniはuvという名前のアトリビュートにテクスチャ座標を格納します。 これを有効にすると、このノードは、自動的にUSD st Primvarsをuvアトリビュートに変換します。

Import From SOPs

以下のパラメータは、修正したSOPジオメトリをUSDに戻す方法を制御します。

Perform Layer Break Before Import

Layer Breakを追加した後でジオメトリをUSDに戻します。 これは、編集のみを含んだUSDレイヤーを生成し、それをオーバーレイとして使用したい時に役立ちます。

Load As Reference

これを有効にすると、ジオメトリがペイロードとして取り込まれます。 これを無効にすると、既存のシーンツリー上に階層をサブレイヤー化してジオメトリが取り込まれます(サブレイヤーとリファレンスを参照)。

Copy Contents Into Editable Layer

( Load As Reference が無効な時)デフォルトでは、SOPsから取り込まれたジオメトリは、ディスク上のファイルから取り込まれたジオメトリと同様に扱われます。 つまり、強いオピニオンのレイヤーをそのレイヤーの上に適用しないとそのジオメトリを編集することができません。 しかし、これを有効にすると、このノードは、そのジオメトリを アクティブレイヤー に配置するので、このノードの出力に接続されたLOPノードでジオメトリを修正することができます。

このノードは、SOPジオメトリから生成された内容を匿名In-Memory USDレイヤーにコピーすることで、これを行ないます。 この方が遅くなりますが、ディスクに書き込む必要のあるUSDレイヤーの数、各レイヤーに取り込む内容の選択肢が増えます。 これは、Load Layer for Editing LOPのオペレーションと同様です。

Adjust Transforms for Input Hierarchy

( Load As Reference が無効な時)これが有効な時(デフォルト)、このノードは、LOPsから(パックUSD Primsとして)SOPsに取り込んで再度LOPsに戻した場合に発生するトランスフォームの問題を自動的に補正します。 LOPs → SOPパックUSD Prims → LOPsのように双方向な変換をしないことがわかっている場合には、これを無効にすることでインポートを高速化することができます。

SOPsのパックプリミティブは、そのパックジオメトリのローカルからワールドへの完全トランスフォームを表現したトランスフォームを1個だけ持ちます。 USDジオメトリPrimを パックUSD Prim としてSOPsにエクスポートすると、Houdiniは、そのUSD Prim下の完全トランスフォーム階層を単一トランスフォーム行列に平坦化します。

これは、SOPパックプリミティブをLOPsに“戻す”際に、その子プリミティブ自身にトランスフォームがあると、そのトランスフォーム SOPsから取り込まれたルートPrimのトランスフォームに組み込まれるので問題を起こしてしまいます。 その結果、トランスフォームが間違って二重に適用されてしまいます。

このパラメータを有効にすると(デフォルト)、このノードは、シーングラフ階層内でPrimの位置関係を考慮して、SOPsから取り込まれたすべてのトランスフォームを検査します。 Prim(または子Prims)が既に入力ステージ上に存在している場合、このノードは、親Primsの逆トランスフォームをPrimの追加ローカルトランスフォームとして適用します。 これによって、LOPsでのPrimの最終ワールド空間位置がSOPsでの位置と同じになります。

Copy Contents Into Editable Layer が有効になっている場合、このノードは、取り込んだPrimsに直接それらの追加トランスフォームを適用します。 無効になっている場合、このノードは、新しいアクティブレイヤーを作成し、その新しいレイヤー内にオーバーライドとしてトランスフォームを配置します。

Reference Type

( Load As Reference が有効な時)SOPジオメトリを参照プリミティブにPayloadまたはReferenceのどちらのコンポジションアークとして追加するのか制御します。 さらに、この新しいコンポジションアークをこのプリミティブ上の既存のコンポジションアークよりも強くするのか弱くするのか指定します。

Weaker Payload

既存のPayloadよりも弱いオピニオンのPayloadコンポジションアークを作成します。

Stronger Payload

既存のPayloadよりも強いオピニオンのPayloadコンポジションアークを作成します。

Weaker Reference

既存のReferenceよりも弱いオピニオンのReferenceコンポジションアークを作成します。

Stronger Reference

既存のReferenceよりも強いオピニオンのReferenceコンポジションアークを作成します。

Reference Primitive

( Load As Reference が有効な時)このノードは、変換されたジオメトリを外部USDジオメトリファイルのように扱います。 これは、SOPジオメトリの変換によって生成されたUSD Prim階層からどのルートレベルPrimを取り込むのか制御します。 ここは、“Reference Automatically Chosen Primitive”のままに設定してください。

Reference Automatically Chosen Primitive

リファレンスしたファイルにデフォルトPrimが設定されている場合、そのデフォルトPrimを使用します。 デフォルトPrimが存在しなかった場合、ルートにある最初のXform Primを使用します。 ルートに何もXform Primがなければ、任意のタイプの最初のルートPrimを使用します。

Reference Default Primitive

リファレンスしたファイルにデフォルトPrimが設定されている場合、そのデフォルトPrimを使用します。 デフォルトPrimが存在しなかった場合、このノードで警告を表示します。

Reference Specific Primitive

Reference Primitive Path パラメータで指定されたシーングラフパスを参照します。

Reference Primitive Path

Reference Primitive が“Reference Specific Primitive”の時、ここには、参照するPrimのシーングラフパスを指定します。

(このフィールドにautomaticPrimまたはdefaultPrimを設定すると、 Reference Primitive を“Reference Automatically Chosen Primitive”または“Reference Default Primitive”に設定した時の挙動と同じになります。)

Primitive Path

Action パラメータが Create モードの時にこのパラメータがノードに表示され、単一のPrimパスを指定することができます。 これは、リファレンスするブランチの取り付け先となるシーングラフパスです。 リファレンスしたPrimは、このPrim上にオーバーレイされ、そのリファレンスしたPrimの子PrimsはこのPrimの子Primsになります。 このPrimが存在しなかった場合は、このノードがそのPrimを作成します。

Make Instanceable

新しいPrimまたは変更されたPrimを(“ネイティブインスタンス”と同様の)インスタンス化可能としてマークします。 これによって、同じブランチを複数の場所でリファレンスした場合にメモリが節約されますが、リファレンスしたPrimの子Primsは編集不可になります。 このオプションを無効にすると、Primsは明示的に“インスタンス化可能”としてマークされません。 代わりに、各Prim上の現在のinstanceable値がそのままになります。

Parent Primitive Kind

Primitive Path にPrimが存在しなかった場合、このノードはそのPrimを作成します。 Primを作成する必要になった場合、作成する必要のある中間PrimにこのKindを設定します。

Parent Primitive Type

Primitive Path にPrimが存在しなかった場合、このノードがそのPrimを作成します。 このノードがそのPrimを作成する必要がある場合、その途中で作成する必要のある中間Primsがこのタイプになります。

Apply Inverse USD Transform to Unpacked Geometry

Unpack USD Primitives to Polygons パラメータを有効にするか、または、サブネット内にUnpack USDノードを追加した場合、 アンパックされたポリゴンには、ポリゴンがアンパックされてからUSD Primまでのローカルからワールドのトランスフォームが入ったusdxform matrixアトリビュートが追加されます。 これを有効にすると、ジオメトリをUSDに戻す前に、このノードは、そのusdxformアトリビュートの逆を適用します。 これによって、LOPsに戻されたポイント位置には、USD Primsのトランスフォームが含まれなくなります(その結果、これらのトランスフォームが二重適用されます)。

Import Group

これを有効にして、インポートするグループ名(または、グループ構文をスペースで区切ったリスト)を指定します。 これを有効にして、フィールドを空っぽのままにすると、すべてのジオメトリが取り込まれます。

Import Group Type

これを有効にして、 Import Group がポイントまたはプリミティブのどちらのグループなのかを指定します。

Import Path Prefix

取り込んだPrimにパスPrimがなかったことで(mesh_0のような)自動生成された名前が付けられている場合、または、パスPrimがあってもそのパスが(/から始まっていない)相対パスであった場合、 このノードは、その名前/パスの頭に自動的にこのパスを追加します。 これは、“パスなし” Primsを単一ブランチ下に整理しておくための方法です。 (ジオメトリ階層を作成する方法を参照。)

(デフォルトは/$OSです。これは、このノードの名前を使ってルートPrim下に“パスなし” Primsを配置します。)

Layer Save Path

これを有効にすると、ジオメトリを含んだレイヤーのSave Pathメタデータにこのファイルパスを設定します。 USD Renderノードを使ってUSDを書き出す時、(出力処理の後に)このファイルパスを使ってジオメトリが.usdレイヤーファイルに保存されます。

Primitive Definition

このグループ内のパラメータは、ソースのSOPジオメトリからどのようにUSDプリミティブを生成するのかという観点で、変換プロセスをガイドします。

Packed USD Primitives

インポートしたSOPジオメトリ内のパックUSDプリミティブの扱い方。

Overlay Transforms

パックUSDプリミティブのトランスフォームをオーバーライド(Over)Primとして取り込みます。 これによって、パックUSDプリミティブをアンパックすることなく簡単にトランスフォームさせることができます。

Ignore

ソースのSOPジオメトリ内のパックUSDプリミティブを無視します。

Other Primitives

通常の非パックプリミティブ(ポイント、カーブ、ポリゴン、球など)の扱い方。

Define

インポートしたジオメトリにまだUSDプリミティブが存在しなかった場合、そのUSDプリミティブを作成します。 これがジオメトリをインポートする標準の方法になっています。

Overlay

USDプリミティブをオーバーライドとして作成します。 これは、同じパスで下位レベルに存在するプリミティブを変更するだけの可視プリミティブとなります。 これは、SOPから特定のアトリビュートを既存のUSDジオメトリに取り込んで編集したいだけの場合に役立ちます。

Overlay Transforms

“Overlay”と同様ですが、トランスフォームデータのみを取り込みます。

Define Only Leaf Primitives

中間プリミティブ(例えば、 Import Path Prefix で作成されるXform Prims)を定義ではなくオーバーライドとして作成します。 つまり、中間プリミティブが下位レイヤー内の大元のプリミティブと一致しなかった場合、そのLeaf Primsはシーンに追加されません。 これは、親プリミティブがシーンツリー内にまだ存在しなかった場合にのみジオメトリを取り込みたい時に役立ちます。

(ただ、すべてのデータは取り込まれ、シーングラフツリーまたはビューポート内で可視にできないだけなので注意してください。)

Packed Primitives

SOPネイティブのパックプリミティブの扱い方。

Create Xforms

パックプリミティブのトランスフォームとアトリビュートからXform Primを作成し、その下にパックプリミティブのジオメトリを取り込みます。

Create Native Instances

パックプリミティブ内のジオメトリをインスタンス化可能なリファレンスとして取り込みます。 これは、 Import Path Prefix Prim下のPrototypes Prim下にプロトタイプとして各ピースを取り込みます。

Create Point Instancer

パックプリミティブ内のジオメトリをポイントインスタンスジオメトリとして取り込みます。 これは、ポイントインスタンサーPrim下にプロトタイプとして各固有のピースを取り込みます。

SOP Primitiveアトリビュートをusdinstancerpathパックプリミティブに割り当てることで、インスタンサーのUSDシーングラフパスを指定することができます。

Unpack

パックプリミティブのジオメトリのみを取り込みます。 Create Xforms モードとは違って、このノードは、追加で階層を作成しないので、インポート前にパックプリミティブをアンパックすることと同じです。 これは、複数のジオメトリをアトリビュートをマージせずに取り込むのに役立ちます。

Agents

エージェントプリミティブの扱い方。 どのモードでも、エージェントプリミティブのトランスフォームとアトリビュートからPrimが生成され、エージェントのジオメトリとアニメーションはそのPrim下に取り込まれます。

Create Instanced SkelRoots

エージェントのスケルトンとジオメトリをインスタンス化可能なリファレンスとして、スケルトンPrimとスキンPrimを含んだSkelRoot Primに取り込みます。 これは、各固有のエージェント定義をプロトタイプとして、 Import Path Prefix Prim下のagentdefinitions Prim下に取り込みます。

Create SkelRoots

エージェントのスケルトンとスキンジオメトリを格納するSkelRoot Primを作成し、そのPrim下にそれらが取り込まれます。 これは、大規模な群衆だと Create Instanced SkelRoots よりも効率が悪くなりますが、例えば、1体のキャラクタを取り込むようなインスタンス化が不要な場合で役立ちます。

Create Instanced Skeletons

エージェントのスケルトンをインスタンス化可能なリファレンスとして、Skeleton Primに取り込みます。 これは、各固有のエージェント定義をプロトタイプとして、 Import Path Prefix Primのagentdefinitions Prim下に取り込みます。

Create Skeletons

エージェントのスケルトンをSkeleton Primとして、エージェントのXform Prim下に取り込みます。 これは、大規模な群衆だと Create Instanced Skeletons よりも効率が悪くなりますが、例えば、1体のキャラクタを取り込むようなインスタンス化が不要な場合で役立ちます。

Create SkelAnimations

エージェントのジョイントアニメーションのみを取り込んで、SkelAnimation Primを作成します。 エージェントのスケルトンとRestジオメトリは通常ではフレーム間で変化することはないので、これを使用することで、フレームシーケンスを効率的に取り込むことができます。

NURBS Curves

NURBSカーブプリミティブの扱い方。

Convert to Basis Curves

カーブをBasisCurvesプリミティブとして取り込みます。 これは、3次カーブにしか対応していませんが、Hydraを介したレンダリングで役に立ちます。

Create NURBS Curves

カーブをNurbsCurvesプリミティブとして取り込みます。 これは、NURBSカーブを完全に双方で変換できますが、Hydraを介したレンダリングに制限があります。

Kind Authoring

取り込んだプリミティブにKindを割り当てる方法。

All Geometry is One Component

取り込んだツリー内のルートプリミティブをComponentに設定します。子プリミティブにはKindを設定しません。

Nested Groups and Components

取り込んだツリー内のLeaf(末端)プリミティブをComponentに設定します。ブランチ(分岐)プリミティブをGroupに設定します。

Nested Assembly, Groups, and Components

取り込んだツリー内のルートプリミティブをAssemblyに設定します。中間のブランチプリミティブをGroupに設定します。LeafプリミティブをComponentに設定します。

None

取り込んだプリミティブにKindを設定しません。

Path Attributes

SOPジオメトリの格納先となるPrimパスとして使用するSOP Primitive文字列アトリビュート を(カンマまたはスペースで区切った)リスト。 デフォルトはpath,nameです。 上記のジオメトリ階層を参照してください。

このリストに2個以上のアトリビュートが含まれていれば、インポーターは、各アトリビュートから最初に空っぽでない値をチェックします。

その文字列値がフルパスだった場合、そのパスがそのプリミティブのUSDシーングラフパスとして使用されます。 その文字列値が相対パス(または、名前だけ)だった場合、その文字列を Import Path Prefix 文字列の後に追加して、フルシーングラフパスを生成します。

リスト内のアトリビュートがどれも指定したSOPプリミティブ上に存在しなかった場合、または、どの値も空っぽの文字列だった場合、インポーターは自動的に名前を生成します(例えば、sphere_0)。

Import HeightFields as Mesh

ソースのSOPジオメトリにHeight Fieldボリュームが含まれていた場合、そのボリュームはポリゴンメッシュとして取り込まれます。 他のレイヤーは、値がVaryingなら頂点Primvar、Constantなら定数Primvarとして取り込まれます。

Import Data

以下のパラメータは、SOPジオメトリアトリビュートからUSDのアトリビュートとPrimvarへの変換に影響し、デフォルト値とタイムサンプル値のどちらで編集するのか選択することができます。

Author Time Samples

SOPから取り込まれた値を、それに呼応するUSDアトリビュートのデフォルト値として編集するのか、(タイムライン内の時間で)タイムサンプルとして編集するのか。

(USDシステムにアトリビュート値を照会すると、そのアトリビュート上にタイムサンプルが存在しなければデフォルト値を返します。タイムサンプルが存在すれば、そのタイムサンプルデータから補間された値を返します。)

If SOP is Time Dependent

ジオメトリ派生元のSOPノードが時間依存(アニメーションしたり、アニメーション値が含まれている)の場合、タイムサンプルを書き込みます。 時間依存でない場合、デフォルト値を書き込みます。

If Not Specifically Excluded

Single Value Attributes パラメータでリストしたアトリビュート以外のアトリビュートに対してすべての値をタイムサンプルとして編集します。

Never

すべての値をデフォルト値として編集します。

(これは、USD Configure SOPを使用してジオメトリ上で事前に設定できないこのノード上の唯一のパラメータです。この理由は、ジオメトリに埋め込まれたアトリビュート値だけでなく“ライブ”のSOPを必要とするからです。)

Topology Attributes

USDトポロジーアトリビュートをタイムサンプル値またはデフォルト値のどちらで作成するのかを制御します。

Animated

ソースジオメトリのトポロジーが時間軸で変化するのか分かっているのであれば、USDシーングラフ内でトポロジーアトリビュートをタイムサンプルとして記録するこのオプションを選択してください。 アニメーションするトポロジーが含まれていると、再生するのに非常に負荷がかかってしまうので、このオプションは必要な時にだけ使用してください。

Static

トポロジーアトリビュートをデフォルト値として書き込みます。 これによって再生を非常に速くすることができますが、トポロジーが時間軸で変化できなくなる制限がかかります。

None

トポロジーアトリビュートを作成しません。

これは、USDデータをSOPsに送信して処理を加えて、それをLOPsに戻すのに役立ちます。 このオプションを使用すると、このプロセスではジオメトリトポロジーが変化しなかったとインポーターに伝わるので、変化のあったポイントポジションまたは他のPrimvarのみが取り込まれるようになります。

Attributes

USDにPrimvarとして取り込みたいSOPアトリビュートを指定したスペース区切りのアトリビュート名/パターンのリスト。

アトリビュート名を直接マッチさせるだけでなく、特別な意味を持った値がいくつか用意されています:

bounds

関連するSOPジオメトリから計算された境界ボックスを使用して、USD extentアトリビュートを作成します。

visibility

usdvisibilityジオメトリアトリビュートの値に基づいて、USD visibilityアトリビュートを作成します。

インポーターが特定の共通Houdiniアトリビュートをそれに呼応するUSDアトリビュートにどのように変換するのかに関する情報は、アトリビュートのインポートを参照してください。

Indexed Attributes

USDにIndex Primvarとして取り込みたいSOPアトリビュートを指定したスペース区切りのアトリビュート名/パターンのリスト。

SOPアトリビュートがこのパターンにマッチすると、インポーターは、Primvarをインデックス配列の値として作成します(つまり、primvars:nameに値の配列、primvars:name:indicesにそれらの値のインデックスの配列が入ります)。

整数でも文字列でもないアトリビュートに対してIndex Primvarを用意するのは、処理に負荷がかかってしまいます。 少数の固有な値を多数のコンポーネントにわたって使用することでストレージサイズを大幅に節約できそうな場合にのみIndex Primvarを使用してください。

Import as Single Element Array

SOPジオメトリアトリビュートがPoint/Primitive/Vertexアトリビュートのどれかに関係なく、USDにConstant補間(プリミティブ全体で1個の値を持つ配列)のPrimvarとして取り込みたいSOPアトリビュートを指定したスペース区切りのアトリビュート名/パターンのリスト。 特定のUSDプリミティブに対して複数の値を選択できる場合、インポーターは、見つかった最初の値を選択します。 ( Import as Single Value の代わりに)アトリビュートを単一要素配列として取り込むと、Primvarのタイプを変えずにそのPrimvarの補間を上書きすることができるので便利です。

Import as Single Value

SOPジオメトリアトリビュートがPoint/Primitive/Vertexアトリビュートのどれかに関係なく、USDにConstant補間且つプリミティブ全体で単一値のPrimvarとして取り込みたいSOPアトリビュートを指定したスペース区切りのアトリビュート名/パターンのリスト。 特定のUSDプリミティブに対して複数の値を選択できる場合、インポーターは、見つかった最初の値を選択します。 これは、Detailアトリビュートが取り込まれるデフォルトの挙動です。 これは、 Import as Single Element Array に似ていますが、Primvarのタイプが単一要素の配列ではなくスカラー値となります(例えば、vector3f[]ではなくvector3fとなります)。

Boolean Attributes

boolタイプのPrimvarに変換したい整数SOPアトリビュートを指定したスペース区切りのアトリビュート名/パターンのリスト。

Set Default Values

常にデフォルト値(タイムサンプルなし)としてUSD Primvarを作成したいSOPアトリビュートを指定したスペース区切りのアトリビュート名/パターンのリスト。 ここには、 Author Time Samples を“If Not Specifically Excluded”に設定した場合のその除外アトリビュートのリストを指定します。

Partition Attributes

ジオメトリのサブセットを表現したSOP Primitive文字列アトリビュートを指定したスペース区切りのアトリビュート名/パターンのリスト。 メッシュプリミティブとカーブプリミティブに関しては、インポーターは、このアトリビュートが同じ値のエレメントを自身のジオメトリサブセットに格納します。

インポーターは、サブセット名をアトリビュート値に設定することを試みますが、その名前を有効なUSDプリミティブ名に変更する必要性が出てきます。 インポーターは、ジオメトリサブセットPrim上のそのままのアトリビュート値をpartitionValueキーを持つCustom Dataとして格納します。

Subset Groups

SOPプリミティブグループを指定したスペース区切りのグループ名/パターンのリスト。 各グループ内のSOPのポリゴンプリミティブとカーブプリミティブは、そのグループの名前でジオメトリサブセットとして取り込まれます。

USD Custom Attributes

USDに(Primvarではなく)アトリビュートとして取り込みたいSOPアトリビュートを指定したスペース区切りのアトリビュート名/パターンのリスト。

Translate UV Attribute to ST

uvSOP頂点アトリビュートをprimvars:stUSD Primvarに変換します。 これを有効にする必要があるかどうかは、あなたが使用しているレンダラーとシェーダの作り方で決まります。 Karmaでレンダリングする場合は、これを無効のままにしてください。

(これを書いた時点では、USDでのテクスチャ座標の命名に厳格な基準はありませんが、stを使用するのが一般的な慣例であるのに対して、SOPジオメトリではuvを使用するのが一般的な慣例です。)

LOPノード

  • Add Variant

    Prim上のバリアントセットに1つ以上のバリアントを追加します。このノードは、そのPrimが存在しなければ、そのPrimを作成します。

  • Additional Render Vars

    複数のRender Varsを作成します。

  • Asset Reference

    USDアセットをリファレンス、トランスフォーム、バリアント選択します。

  • Assign Material

    1つ以上のUSD Primsにマテリアルを割り当てます。VEXを使用することで、プログラム的にマテリアルを割り当てたり、プログラム的に割り当て毎にマテリアル設定をオーバーライドしたり、プログラム的にジオメトリサブセットにマテリアルを割り当てることもできます。

  • Attribute VOP

    VOPネットワークを使ってUSDアトリビュート値を作成/編集します。

  • Attribute Wrangle

    VEXスニペットを使ってUSD Primアトリビュートを作成/編集します。

  • Auto Select LOD

    カメラからPrimまでの距離に基づいて自動的にLODバリアントを選択します。

  • Background Plate

    背景が見透けるようにシーン内に穴を残すホールドアウトオブジェクトまたはマットオブジェクトをセットアップします。これらのPrimsはまだ影を受け、背景であるかのように反射に寄与します。

  • Bake Skinning

    UsdSkelで駆動されたアニメーションをトランスフォームとポイントポジションにベイクします。

  • Basis Curves

    基底カーブシェイプPrimを作成または編集します。

  • Begin Context Options Block

    このノードは、LOPノード群のブロックを開始します。このブロック内では特定のコンテキストオプションが特定の値を持ちます。

  • Blend

    小数点ウェイトに基づいてレイヤーのアトリビュートに部分的に編集を適用します。

  • Blend Constraint

    パラメータとして指定されたウェイトのリストに応じてトランスフォームをブレンドします。

  • Cache

    異なる時間におけるネットワークのクック結果をキャッシュ化することで、再生パフォーマンスを上げます。

  • Camera

    シーンにUSDカメラを追加します。

  • Capsule

    カプセル(開口部を半球で閉じたチューブ)形状Primを作成/編集します。

  • Collection

    プリミティブパターンを使ってコレクションを作成/編集します。

  • Component Geometry

    ジオメトリコンテナ。または、Component Builderツールで作成されたネットワーク内でソースを取り込みます。

  • Component Geometry Variants

    Component Builderツールで作成されたネットワーク内でジオメトリバリアントをセットアップします。

  • Component Material

    Component Builderツールで作成されたネットワーク内でマテリアルをジオメトリに割り当てます。

  • Component Output

    Component Builderツールで作成されたネットワーク内で最終Component Primを組み立てます。

  • Cone

    円錐形状Primを作成/編集します。

  • Configure Layer

    レイヤー上のメタデータを編集します。

  • Configure Primitives

    1つ以上のPrim上の色々なメタデータを編集します。

  • Configure Properties

    プロパティ(リレーションシップとアトリビュート)上のメタデータを修正します。

  • Configure Stage

    レイヤーをステージとAsset Resolutionに読み込むための方法を示したメタデータを修正します。

  • Copy Property

    あるプリミティブのプロパティを別のプリミティブにコピーしたり、プリミティブ上のプロパティの名前を変更します。

  • Create LOD

    PolyReduce SOPを使って高解像度モデルから複数のLODを自動的に生成し、それらのLODをUSDバリアントとして保存します。

  • Cube

    キューブ形状Primを作成/編集します。

  • Cylinder

    シリンダー形状Primを作成/編集します。

  • Distant Light

    太陽などの遠くにある光源を表現したUSD Distant Lightを作成または編集します。いくつか便利なKarma固有のアトリビュートを追加します。

  • Dome Light

    USD Dome Light Primを作成/編集します。ドームライトは光を 内側 に放射して、シーンを囲んだ空/環境からの入射光を模倣します。

  • Drop

    重量によるPrimsの落下シミュレーションを実行します。

  • Duplicate

    Prim(とその子孫)のコピーを作成します。

  • Edit

    ビューア内でインタラクティブにPrimsをトランスフォームさせます。物理衝突を使用して、プロップを現実的に配置することができます。

  • Edit Context Options

  • Edit Material

    パラメータやシェーダ接続を変更することで既存のUSDマテリアルを編集することができます。これは、既存マテリアルが編集不可なレイヤーの場合に役立ちます。

  • Edit Material Properties

    マテリアルまたはシェーダの入力アトリビュートの値を直接編集できるようにそれらのアトリビュートを反映させたSpareパラメータインターフェースを構築することができます。

  • Edit Properties

    アトリビュート値とリレーションシップ値を直接編集するためのSpareパラメータインターフェースを構築することができます。

  • Edit Prototype

    ポイントインスタンスまたはUSDインスタンス可能Primが別のプロトタイプをインスタンス化するように切り替えます。

  • Edit Target Layer

    アクティブレイヤー内のPrimsとアトリビュートをオーバーライドするのではなく、下位レイヤーで直接編集を適用することができます。

  • Error

    親アセット上で表示可能なメッセージ、警告、エラーを生成します。

  • Explore Variants

    Primのバリアントを視覚化、設定、抽出します。

  • Extract Instances

    インスタンスを実際に編集可能なPrimに変換(ヒーロー化)します。

  • Fetch

    他のLOP(他のLOPネットワーク内のLOPも可能)の出力を取得します。

  • Follow Path Constraint

    Primがパスカーブに追従するように拘束します。

  • For Each

    For-Eachループブロックの終了ノード。

  • Geometry Sequence

    ジオメトリファイルシーケンスをアニメーションジオメトリとしてLOPsに取り込みます。

  • Geometry Subset VOP

    VEXpressionまたはVOPネットワークの評価に基づいて(SOPのグループと同様に)ジオメトリPrims内にUSDジオメトリサブセットを作成します。

  • Graft Branches

    2番目の入力からPrims/ブランチを受け取り、それらのツリーを1番目の入力のシーングラフツリーのブランチに取り付けます。

  • Graft Stages

    他の入力からシーングラフツリーを受け取り、それらのツリーを1番目の入力のシーングラフツリーのブランチに取り付けます。

  • HDA Dynamic Payload

    ディスク上のOBJ/SOPアセットをクックして、そのアニメーションジオメトリ出力をUSD Payloadとして取り込みます。

  • Hermite Curves

    エルミートカーブシェイプPrimを作成または編集します。

  • Inline USD

    レイヤーを表現したusdaコードを解読し、そのレイヤーをレイヤースタックに追加します。

  • Insertion Point

    ノードが挿入可能なノードグラフ内のポイントを表現します。

  • Instancer

    ポイント上にPrimsをインスタンス化またはコピーします。

  • Instancer

    ボックス内に定数ボリュームを作成します。

  • Instancer

    共通設定を共有した複数のRender Productを作成します。

  • Karma

    HoudiniのKarmaレンダラーを使ってUSDシーンをレンダリングします。

  • Karma Procedural

    Karma向けにレンダリング時にインスタンス化される仕組みをセットアップします。

  • Karma Render Properties

    Karma用レンダープロパティを構成します。

  • Karma Standard Render Vars

    標準Karma Render Vars(AOVs/Image Planes)を作成します。

  • LOPノード

    LOPノードは、キャラクタ、プロップ、ライティング、レンダリングを記述したUSDを生成します。

  • LPE Tag

    ライトのLPE Tagを管理します。

  • Layer Break

    このノードより下流のノードで編集をするための新しいアクティブサブレイヤーを開始し、ディスクに保存する際にこれまでのすべてのレイヤーが破棄されることを示します。

  • Layer Replace

    特定のレイヤー内のすべての用途を2番目の入力の代替レイヤーに置換します。

  • Layout

    インスタンス化されたUSDアセットをシーンに取り込むツールが備わっています。個々にコンポーネントを配置したり、カスタマイズ可能なブラシを使って色々な方法でコンポーネントをペイント/スキャッターしたり、既存のインスタンスを編集することができます。

  • Light

    USD Light Primを作成/編集します。このノードは、Karma固有のいくつかの便利アトリビュートも追加します。

  • Light Linker

    ルールに基づいてUSDライトリンクプロパティを作成します。

  • Light Mixer

    複数のライトに対してUSDプロパティをインタラクティブに編集することができます。

  • Load Layer for Editing

  • Loft Payload Info

    ペイロードをロードするPrimにそのペイロード内部の基本情報を追加します。

  • Look At Constraint

    Primがターゲットの方へ常に向くように拘束します。

  • Mask from Bounds

    選択したPrimsが境界形状内に存在するかどうか/どれだけの割合で存在するかに応じてPrimvarを設定します。

  • Material Library

    シェーダVOPノードからUSDマテリアルPrimsを作成します。

  • Material Linker

    ルールに基づいてマテリアルの割り当てを作成します。

  • Material Variation

    Prim/インスタンス単位でマテリアルパラメータをオーバーライドするためのアトリビュート/Primvarsを作成します。

  • Merge LOP

    入力ステージのレイヤー(s)をレイヤースタックに1本化します。

  • Mesh

    MeshシェイプPrimを作成または編集します。

  • Modify Paths

    アセットパスアトリビュート値を修正します。

  • Modify Point Instances

    個々のポイントインスタンスに対してポイントトランスフォームとポイントプロパティ値を変更します。

  • Null

    このノードは何もしません。ネットワーク内の固定位置としてNullをネットワークに挿入することで、エクスプレッション/スクリプト内で名前によってその位置を参照するのに役立ちます。

  • Output

    サブネットワークの出力を表現します。複数の出力を使ってノードアセットを設計することができます。

  • Parent Constraint

    ツリー内のどこかの他のPrimのトランスフォーム階層をPrimに継承させたようにします。

  • Points

    PointsシェイプPrimを作成または編集します。

  • Points Constraint

    ジオメトリのポイントポジションを使ってPrimsの位置と向きを拘束します。

  • Primitive

    特定のタイプの複数のアトリビュートを一括で作成します。

  • Prune

    Primsやポイントインスタンスを非表示または非アクティブにします。

  • Python Script

    このノード内にUSD APIを使ってPythonコードを記述することで、ステージを直接制御することができます。

  • RBD Destruction

    USDで破壊シミュレーションをする方法の例。これは事前準備したエフェクトとしても役立ちます。

  • Reference

    外部USDファイルの内容を既存シーングラフツリーのブランチで参照したり、既存の参照を削除/置換します。

  • Render Geometry Settings

    シーングラフ内のジオメトリにレンダラー固有のジオメトリ設定を適用します。

  • Render Product

    UsdRenderProduct Primを作成/編集します。このPrimは、そのRender Productの生成方法を指定したアトリビュートと共にレンダラーの出力(レンダリング画像またはレンダラーが生成した他のファイルなどの中間生成物)を表現します。

  • Render Settings

    UsdRenderSettings Primを作成/編集します。このPrimには、シーンをレンダリングするための全般的な設定を格納します。

  • Render Var

    レンダラー/シェーダで計算されるカスタム変数のシェーダ出力やLight Path Expression(LPE)を指定します。

  • Resample Transforms

    USD Prims上の既存のタイムサンプルから補間されたトランスフォームタイムサンプルを生成します。

  • Restructure Scene Graph

    このノードには、Primパス、バリアントセット、コンポジションアークを編集するための様々なオペレーションが用意されています。

  • Retime Instances

    選択したインスタンス上のアニメーションのタイミングをオフセット/スケールさせます。

  • SOP Character Import

    SOPネットワークからキャラクタまたはアニメーションをUSDシーングラフに取り込みます。

  • SOP Create

    このノード内部のSOPネットワーク内でジオメトリを作成することができるので、別にSOPネットワークを用意することなくLOPネットワーク内のその場でジオメトリを作成することができます。

  • SOP Crowd Import

    SOPネットワークから群衆をUSDシーングラフに取り込みます。

  • SOP Import

    SOPネットワークのジオメトリをUSDシーングラフに取り込みます。

  • SOP Modify

    USDジオメトリをSOPジオメトリに変換し、そのジオメトリに対してこのノード内部のSOPサブネットを実行し、その結果をUSDオーバーライドに戻します。

  • Scene Import

    Objectレベルのモデル、マテリアル、ライトをLOPネットワークに取り込みます。

  • Scope

    Scope Primを作成します。Scopeとは最も単純なグループ化の形式であり、トランスフォームを持ちません。Scopeはシーンツリーを整理するのに役立ちます。

  • Set Extents

    選択したPrimsの境界ボックスメタデータを設定します。

  • Set Variant

    Prim上のバリアントセットに格納されているどれかのバリアントを選択(切り替え)します。

  • Simulation Proxy

    物理シミュレーションに適した低解像度ポリゴン衝突ジオメトリを生成し、オリジナルモデルに対してプロキシリレーションシップを作成します。

  • Sphere

    球形状Primを作成/編集します。

  • Split Point Instancers

    ポイントインスタンサーを2個以上のインスタンスに分割します。これは元のインスタンスを分割します。

  • Split Primitive

    ジオメトリサブセットまたはPrimvar値に基づいてUSDジオメトリPrimsを子Primsに分割します。

  • Stage Manager

    一度に多くのファイルを参照して、それらをシーングラフツリー内に配置するための便利インターフェースを備えています。

  • Store Parameter Values

    ステージ内の一時的な(保存されていない)データを格納することができます。

  • Sublayer

    USDファイルまたは他のLOPノードチェーンをサブレイヤーとして取り込んだり、既存のサブレイヤーを削除/置換/並べ替えします。

  • Subnet

    LOPサブネットワークをカプセル化することで、一部のネットワークを整理して隠すことができます。

  • Surface Constraint

    Primがサーフェスに引っ付くように拘束します。

  • Switch

    パラメータ選択またはエクスプレッションに基づいて複数入力のどれかを通過させます。

  • TimeShift

    タイムラインの異なる位置におけるステージをそのまま出力します。

  • Transform

    選択したUSD Primsのトランスフォームを編集します。

  • Transform UV

    USD Prims上のテクスチャ座標を移動、回転、スケールさせます。

  • USD ROP

  • USD Render ROP

  • Unassign Material

    1個以上のUSDプリミティブからマテリアルのバインドを解除します。

  • Value Clip

  • Vary Material Assignment

    いくつかのPrimsに対して異なるマテリアルを割り当ててバリエーションを生成します。

  • Volume

    フィールドPrimsを含んだボリュームPrimでディスク上のボリュームデータを参照します。

  • Xform

    Xform Primを作成/編集します。Xform(とそのサブクラス)はシーンツリー内のトランスフォームを表現します。