Since | 19.0 |
このノードは、SOPsから群衆エージェントを簡単且つ効率的に取り込めるようにしたSOP Importのラッパーです。 このノードは、デフォルトでキャッシュ化を実施し、キャッシュ化と再生パフォーマンスを高速化するためにタイムサンプルのアトリビュートとPrimvarを最小限に抑えます。
パラメータ ¶
SOP Path
群衆を含んだSOPノードのパス。
Cache Behavior
フレームをキャッシュに結合するタイミングと方法を指定します。
Always Cache All Frames
このノードが初回にクックされた時、または、Cache LOPの入力が変更される度にすぐに、このノードはフレーム範囲全体をクックして、その結果を単一ステージに結合します。
これは、計算時間もメモリ使用量も非常に負荷がかかりますが、フレーム範囲全体をキャッシュ化する場合、この方法だと、フレームあたりの平均キャッシュ化時間が一番短く済みます。
Cache Cooked Frames
特定のフレームが要求されると、そのフレームのデータがクックされ、キャッシュに結合されます。
これは、一度に複数フレームをクックするよりもフレームあたりの処理負荷が大きいですが、最初の結果を得るまでの時間は一番短く済みます。
Cache Up To Cooked Frames
これは、 Always Cache All Frames と Cache Cooked Frames のハイブリッドです。 特定のフレームのデータが要求されると、このLOPは、フレーム範囲の開始フレームから要求されたフレームまでの全フレームをクックしてキャッシュ化します。
このオプションは、クックされるデータが、前のフレームに戻ってクックするのに非常に負荷が高いシミュレーションのデータである時に役立ちます。
Cache Current Frame Only
このモードでは、現行フレームのみがキャッシュに保存されます。 これは、タイムラインをスクラブさせた時のメモリ使用量を大幅に削減しますが、 このノードからあるフレームのデータが要求される度に、タイムサンプルを再クックしなければなりません。
通常では、このモードは、モーションブラーをかけるためにSubframe Sampling
を有効にした場合にのみ使用します。
このモードでは、シミュレーション全体を再生した後でも、Cacheノードは常に時間依存になります。
Start/End/Inc
キャッシュが収集される入力からの各クック要求間の開始フレーム、終了フレーム、増分サイズ(単位はフレーム)。 最初の2つの値は、キャッシュ化されるフレーム範囲を制御し、3番目の値では、ステージをもっと多くサンプリングさせてモーションブラーを改善したり、もっと少なくサンプリングしてメモリを節約することができます(これは精度を犠牲にしますが、USDはタイムサンプル値で単に線形補間を使用しています)。
Agent Geometry
エージェントのRestジオメトリを取り込む方法を指定します。 どのモードでも、エージェントプリミティブのトランスフォームとアトリビュートからPrimが生成され、エージェントのジオメトリとアニメーションはそのPrim下に取り込まれます。
Create Instanced SkelRoots
エージェントのスケルトンとジオメトリをインスタンス化可能なリファレンスとして、スケルトンPrimとスキンPrimを含んだSkelRoot
Primに取り込みます。
これは、各固有のエージェント定義をプロトタイプとして、 Import Path Prefix Prim下のagentdefinitions
Prim下に取り込みます。
Create Instanced Skeletons
エージェントのスケルトンのみをインスタンス化可能なリファレンスとして、Skeleton
Primに取り込みます。
これは、各固有のエージェント定義をプロトタイプとして、 Import Path Prefix Primのagentdefinitions
Prim下に取り込みます。
Import Path Prefix
取り込んだPrimにパスPrimがなかったことで(mesh_0
のような)自動生成された名前が付けられている場合、または、パスPrimがあってもそのパスが(/
から始まっていない)相対パスであった場合、
このノードは、その名前/パスの頭に自動的にこのパスを追加します。
これは、“パスなし” Primsを単一ブランチ下に整理しておくための方法です。
(ジオメトリ階層を作成する方法を参照。)
(デフォルトは/$OS
です。これは、このノードの名前を使ってルートPrim下に“パスなし” Primsを配置します。)
Animation Save Path
有効にすると、ジオメトリを含んだレイヤーのSave Pathメタデータにこのファイルパスが設定されます。
USD Renderノードを使ってUSDを書き出す時、(出力処理の後に)このファイルパスを使ってジオメトリが.usd
レイヤーファイルに保存されます。
Geometry Save Path
有効にすると、ジオメトリを含んだレイヤーのSave Pathメタデータにこのファイルパスが設定されます。
USD Renderノードを使ってUSDを書き出す時、(出力処理の後に)このファイルパスを使ってジオメトリが.usd
レイヤーファイルに保存されます。
以下のパラメータは、(例えば、エージェント定義から)Restジオメトリ形状をUSDに取り込む方法を制御します。
Bind Materials
有効にすると、インポートしたUSD Primに対してusdmaterialpath
SOPアトリビュートに基づいてマテリアルをバインドします。
このusdmaterialpath
値には、Material Primのパス、または、マテリアルバインドのコピー元の他のPrimのパスを指定することができます。
Partition Attributes にmaterialBind
SOPアトリビュートが含まれていれば、結果のジオメトリサブセットに対してもマテリアルバインドを作成することができます。
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アトリビュートを指定したスペース区切りのアトリビュート名/パターンのリスト。
Partition Attributes
ジオメトリのサブセットを表現したSOP Primitive文字列アトリビュートを指定したスペース区切りのアトリビュート名/パターンのリスト。 メッシュプリミティブとカーブプリミティブに関しては、インポーターは、このアトリビュートが同じ値のエレメントを自身のジオメトリサブセットに格納します。
インポーターは、サブセット名をアトリビュート値に設定することを試みますが、その名前を有効なUSDプリミティブ名に変更する必要性が出てきます。
インポーターは、ジオメトリサブセットPrim上のそのままのアトリビュート値をpartitionValue
キーを持つCustom Dataとして格納します。
Prefix Subsets with Attribute Name
Partition Attributes からサブセットを作成する時、それらのサブセットの名前は、アトリビュート名とパーティションアトリビュート値(文字列または整数)を組み合わせた名前になります。 これによって、複数のパーティションアトリビュートに同じ値が含まれている時に名前の干渉が回避されますが、サブセット名を正確に制御したい場合には望ましい名前が得られない場合があります。 文字列アトリビュートの場合、このオプションを無効にすると、アトリビュート値が直接サブセット名として使用されます。
Subset Groups
SOPプリミティブグループを指定したスペース区切りのグループ名/パターンのリスト。 各グループ内のSOPのポリゴンプリミティブとカーブプリミティブは、そのグループの名前でジオメトリサブセットとして取り込まれます。
USD Custom Attributes
USDに(Primvarではなく)アトリビュートとして取り込みたいSOPアトリビュートを指定したスペース区切りのアトリビュート名/パターンのリスト。
Translate UV Attribute to ST
uv
SOP頂点アトリビュートをprimvars:st
USD Primvarに変換します。
これを有効にする必要があるかどうかは、あなたが使用しているレンダラーとシェーダの作り方で決まります。
Karmaでレンダリングする場合は、これを無効のままにしてください。
(これを書いた時点では、USDでのテクスチャ座標の命名に厳格な基準はありませんが、st
を使用するのが一般的な慣例であるのに対して、SOPジオメトリではuv
を使用するのが一般的な慣例です。)
以下のパラメータは、エージェントのアニメーションアトリビュートをUSDに取り込む方法を制御します。 パフォーマンスを良くするために、デフォルトでは、エージェントのアニメーショントランスフォームと境界のみが取り込まれます。
Attributes
USDにPrimvarとして取り込みたいSOPアトリビュートを指定したスペース区切りのアトリビュート名/パターンのリスト。
アトリビュート名を直接マッチさせるだけでなく、特別な意味を持った値がいくつか用意されています:
bounds
関連するSOPジオメトリから計算された境界ボックスを使用して、USD extent
アトリビュートを作成します。
visibility
usdvisibility
ジオメトリアトリビュートの値に基づいて、USD visibility
アトリビュートを作成します。
インポーターが特定の共通Houdiniアトリビュートをそれに呼応するUSDアトリビュートにどのように変換するのかに関する情報は、アトリビュートのインポートを参照してください。
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”に設定した場合のその除外アトリビュートのリストを指定します。
USD Custom Attributes
USDに(Primvarではなく)アトリビュートとして取り込みたいSOPアトリビュートを指定したスペース区切りのアトリビュート名/パターンのリスト。
See also |