On this page | |
Since | 18.0 |
概要 ¶
このノードは、いくつかの方法でポイントインスタンスのトランスフォームとプロパティを変更することができます:
-
パラメータとエクスプレッションを使ってトランスフォームとプロパティの値を設定することができます。
-
VEXスニペットを使ってプロパティ値を設定することができます。
-
このノードの中(または、Houdiniノード階層内のどこか)で、ポイントクラウドを生成するSOPネットワークを作成することができます。 ポイントクラウドの各ポイントがインスタンスに呼応し、そのポイント上のSOPアトリビュートがプロパティに呼応します。 以下のポイントクラウドの編集を参照してください。
このノードは、例えば、RBDシミュレーションの結果からインスタンスをトランスフォームさせたい場合に役立ちます。
他にも、プロパティの編集によって、velocities
とangularVelocities
のアトリビュートを更新することができます。
ポイントクラウドの編集 ¶
このノードでは、インスタンスを表現したポイントジオメトリを処理することでそのインスタンスのトランスフォームとプロパティを変更するSOPネットワークを構築することができます。 そのジオメトリ内のポイントがインスタンスに呼応し、そのポイント上のSOPアトリビュートがインスタンスプロパティに呼応します。
そのSOPネットワークを処理することで、このノードはトランスフォームや個々のプロパティを取得することができます。
-
“Internal SOP”を選択すると、このノードは、このノードの中のSOPサブネット内で構築されたノードを使用します。
このモードでは、自動的にポイントが生成され、ネットワークを介して送られます(
Sub-Network Input #1
の出力を処理ネットワークの1番目のノードに接続)。各ポイントには、インスタンサーのシーングラフパスが設定された
path
SOPアトリビュートが入っています。 -
“External SOP”を選択すると、Houdiniノード階層のどこかのSOPネットワークを指定することができます。 ただし、このSOPネットワークは、何かしらの方法で適切なアトリビュートを持ったポイントを生成しなければなりません。
-
ポイントには必ずインスタンサーのシーングラフパスが設定された
path
SOPアトリビュートがなければなりません。 -
デフォルトでは、このノードは、ポイント番号とインスタンスインデックスを呼応させることで、ポイントとインスタンスのマッチングを試みます。 おそらくこの方法だと、単一インスタンサーですべてのインスタンスを処理している場合でのみ動作します。 それ以外の場合、 Match by ID を有効にして、各ポイント上の
id
SOPアトリビュートにそれに呼応したインスタンスのインデックスを設定してください。
-
-
SOPアトリビュートの名前とタイプは、このノードでセットアップした該当するプロパティ名に合わせてください(一部の名前は自動的にリマップされます。以下のTipsを参照してください)。
-
ポイントポジション(
P
)の他にも、scale
、pscale
、orient
、N
、up
などのSOPインスタンス系Pointアトリビュートがインスタンストランスフォームに変換されます。詳細は、インスタンス系アトリビュートを参照してください。
Tipsとメモ ¶
-
Internal SOPを使用してプロパティを変更する時、色々なインスタンスアトリビュートにアクセスできるようにするには、“Properties”マルチパラメータにそのプロパティを追加する必要があります。
-
USDの
velocities
、angularVelocities
、acceleration
のアトリビュートの編集を試みると、このノードは、それに該当するSOP後リビュート(v
、w
、accel
)からリマップするためのオプションを表示します。 -
VEXスニペットでは、コロン(
:
)を含んだ@
変数名を使用することができます。これによって、特定のUSDアトリビュート名(例えば、i@primvars:foo
)を自動的にバインドするのが簡単になります(通常、このような名前はVEXソースコード内では有効ではありません。このような名前がスニペット内で使用されると、このノードが自動的にその名前をエンコードします)。
パラメータ ¶
Point Instances
/path[instance_index]
構文を使って、スペース区切りのインスタンスのリスト(例えば、/geometry/instancer[0] /geometry/instancer[1]
)を指定します。
インスタンサー内のすべてのインスタンスを選択したいのであれば、/path[*]
を使用します。
範囲を選択したいのであれば、/geometry/instancer[4-7]
(指定した番号を含む)を使用します。
入れ子のインスタンサー内のインスタンスを選択したいのであれば、複数のインデックス(例えば、/geometry/instancer[2][7]
)を使用します。
VEXpressionを使用すれば、インスタンス(例えば、/geometry/instancer[{@weights>0.5}]
)を指定することができます。
Modify Using (Global)
このノードのデフォルトの変更ソースに影響を与えるには、グローバルの Modify Using オプションを設定します。
Internal SOP
埋め込みの編集可能サブネットを使用して、インスタンスを表現したポイントを処理します。
External SOP
外部SOPネットワークを使用します。 この場合、ゼロからインスタンスを表現したポイントを生成しなければなりません(上記のポイントクラウドの編集を参照してください)。
Uniform Values
このノードのパラメータを使用して、インスタンスアトリビュートを変更します。
SOP Path
Modify Using が“External SOP”の時、クックして生成されるポイントを取得するジオメトリノードのノードパスを指定します。 出力内の各ポイントは、選択されたインスタンスのどれかに呼応させてください。
Group
Modify Using が“External SOP”の時、ここが空っぽでない場合は、このポイントグループ内のポイントのみが考慮されます。
Import Frame
インスタンサーが評価されるフレームを指定します。
Transform ¶
Edit Transform
選択したインスタンスに対して新しくトランスフォームを編集します。 これを無効にすると、このノードは既存のトランスフォームをオーバーライドしません。
Modify Using
選択した各インスタンスのトランスフォームを計算する方法。
Global Setting
Modify Using (Global) パラメータで指定された設定を使用します。
Internal SOP
このノードの中のSOPサブネットを使って、各インスタンスを表現したポイントを処理します。
External SOP
外部SOPネットワークを使用します。 この場合、ゼロからインスタンスを表現したポイントを生成しなければなりません(上記のポイントクラウドの編集を参照してください)。
Uniform Values
(エクスプレッションで駆動可能な)トランスフォームパラメータを使用します。
Match By ID
Modify Using が“External SOP”の時にこれを有効にすると、このノードは、生成されたポイント上のid
SOPアトリビュートを検索します。
id
は、該当するインスタンスのインデックスにしてください(これを無効にすると、このノードは、ポイント番号をインスタンスインデックスを呼応させるので、単一インスタンサーですべてのインスタンスを処理している場合でのみ動作します)。
SOP Path
Modify Using が“External SOP”の時、生成しておいたポイントの取得先のジオメトリノードのノードパスを指定します。 その出力内の各ポイントを選択したインスタンスのどれかに呼応させてください。
Group
Modify Using が“External SOP”の時、指定したジオメトリノードの出力から、ここで指定したポイントグループのポイントのみが考慮されます。
Transform order
Houdiniが移動/回転/スケールを適用する順番とHoudiniが回転を適用する順番。
Translate
XYZ軸方向の移動量。
Rotate
XYZ軸による回転量(単位は度)。
Scale
XYZ軸方向の非均一スケール。
Uniform scale
すべての3軸に沿って均一にオブジェクトをスケールします。
Shear
XY平面、XZ平面、YZ平面でシアーさせる量。
Pivot translate
オブジェクトのローカル原点を移動させます。
Pivot rotate
オブジェクトのローカル原点を移動させた後に回転させます。
Properties ¶
Get Properties
クリックすると、 Properties マルチパラメータが自動的に入力されます。 (このノードは、インスタンスの数と同じ長さの配列を持ったインスタンス上の任意の配列アトリビュートがインスタンス単位の値を含んでいると想定します。) これをやり直したい場合、マルチパラメータの Clear をクリックして、再度このボタンをクリックしてください。
Enable
プロパティ毎に、このノードは、ここにチェックが付いている場合にのみ新しい値を計算します。
Name
編集または作成するプロパティの名前。 このフィールドの右側にあるポップアップリストから既存アトリビュートを選択することができます。 (このノードは、インスタンスの数と同じ長さの配列を持ったインスタンス上の任意の配列アトリビュートがインスタンス単位の値を含んでいると想定します。)
Type
作成/編集するアトリビュートのUSDタイプ。 ポップアップリストから Name を選択すると、ここには自動的に正しいタイプが設定されます。
Modify Using
選択した各インスタンスのアトリビュート値を計算する方法。
Global Setting
Modify Using (Global) パラメータで指定された設定を使用します。
Internal SOP
このノードの中のSOPサブネットを使って、各インスタンスを表現したポイントを処理します。
External SOP
外部SOPネットワークを使用します。 この場合、ゼロからインスタンスを表現したポイントを生成しなければなりません(上記のポイントクラウドの編集を参照してください)。
Uniform Values
(エクスプレッションで駆動可能な)パラメータを使用します。
Use Snippet
Modify Using が“Uniform Values”の時、VEXスニペットを評価することで、各インスタンスの値を取得します。
VEXスニペットでは、その値をvalue
変数に書き出してください。
Attribute Wrangle SOPで典型的に利用可能な変数を使用することができます。
index
は現行インスタンスのインデックスです。
@Frame
や@Time
を使用することで、このスニペットを時間依存にすることができます。
Value
Modify Using が“Uniform Values”の時、インスタンス毎にアトリビュートに設定する値(これをエクスプレッションで駆動させることができます)。
Prune ¶
Method
Do Nothing
インスタンスのPrune/非表示をスキップします。
Hide
選択したインスタンスを非表示にします。
Delete
選択したインスタンスを削除します。
Internal SOP
内部SOPでSOPワークフローを使用して、インスタンスを削除または非表示にします。 この埋め込まれたSOPネットワークからUSD Primインスタンスが削除されると、それに該当するインスタンスが削除されます。 その一方で、Visibility SOPを使用してインスタンスを非表示にすると、それに該当するインスタンスが非表示になります。
Prune
このパラメータをゼロ以外の値に設定するとインスタンスが削除されます。 ゼロに設定すると Method が“Hide”の時はインスタンスの非表示が解除され、 Method が“Delete”の時はインスタンスの削除が解除されます。 このパラメータは、タイムサンプル毎にオピニオンを編集することでインスタンスの可視性を簡単にアニメーションさせることができるようにするために用意されています。
Add Duplicates
Modify Using (Global) が“Internal SOP”の時、内部的に複製されたインスタンスPrimsがインスタンサーに追加されます。
Skip Validation
デフォルトでは、入れ子化されたインスタンスが選択された時に入力選択に対して有効性チェックを実行して警告を出して、それらを無視します。 膨大な数のインスタンスを扱う際には、この有効性チェックをスキップすることでパフォーマンスを良くすることができます。
See also |