Houdini 19.0 ノード LOPノード

Attribute Wrangle

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

On this page
Since 17.0

概要

このノードは、Attribute Wrangle SOPと同様です。

  • Primitives パラメータで選択されたPrim毎に、このノードはVEXスニペットを実行します。

  • @nameを使うことで現行アトリビュート値を読み込むことができ、アトリビュートと同じ名前の@変数に書き出しをすることで、そのアトリビュート値を作成/更新することができます。

  • 他にもVEX USD関数を使ってPrimを制御することができます。

  • Bindingsタブでは、VEX変数名をUSDアトリビュートに明示的にマップすることができます。

    • これは、USDアトリビュート名が有効なVEX変数名でない時に役立ちます。

    • まだ存在していないアトリビュートに関しては、明示的にUSDタイプを指定することができます。

構文

VEX Snippet パラメータは、VEXコードのスニペットを入力して、入力ジオメトリに対して実行することができます。 VEX Snippetパラメータで利用可能な構文に関する基本的な情報は、VEXスニペットを参照してください。 VEX言語の一般的な情報は、VEXの章を参照してください。

ビルトイン変数

  • @primpathは、現行Primのシーングラフパスです。

  • 普段では、elemnumは選択されたPrimsのリスト内の現行Primのインデックスで、numelemは選択されたPrimsの総数です。 しかし、これらの変数の意味は、 Run on Elements of Array Attributes が有効な時で異なります。

  • 以下の“便利”ビルトイン変数も利用可能です:

    名前

    等価

    内容

    primname

    usd_name( 0, @primpath )

    現行Primの名前

    primtype

    usd_typename(0, @primpath)

    現行Primのスキーマ名

    primkind

    usd_kind(0, @primpath)

    現行PrimのKind

    primpurpose

    usd_purpose(0, @primpath)

    現行PrimのPurpose

    primdrawmode

    usd_drawmode(0, @primpath)

    現行Primの描画モード

    primactive

    usd_isactive(0, @primpath)

    現行Primがアクティブなら1

    primvisible

    usd_isvisible(0, @primpath)

    現行Primが可視なら1

  • Primの現行バリアントにはビルトイン変数がありませんが、関数コールを使ってビルトイン変数を取得することができます:

    usd_variantselection(0, @primpath, "variant_set_name")

Tips

  • このノードは、Prim毎にスニペットを実行したり、各Prim上の各配列アトリビュート内のエレメント毎にスニペットを実行することができます。 Run On Elements of Array Attributes パラメータを参照してください。

  • VEXスニペットでは、コロン(:)を含んだ@変数名を使用することができます。これによって、特定のUSDアトリビュート名(例えば、i@primvars:foo)を自動的にバインドするのが簡単になります(通常、このような名前はVEXソースコード内では有効ではありません。このような名前がスニペット内で使用されると、このノードが自動的にその名前をエンコードします)。

パラメータ

Primitives

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

Run On Elements of Array Attributes

これを有効にすると、このノードは、各Prim上の配列アトリビュートの 配列エレメント毎に VOPネットワークを評価します。 このモードでは、ビルトインのelemnumは、配列インデックスを参照し、numelemは、 一番大きい 配列の長さを参照します。 (これが無効な時、配列アトリビュートは、スニペット内では配列タイプの変数として利用可能です。)

一部の配列アトリビュートの長さが他よりも短い場合、それらのエレメントは、最後のエレメントで埋められます。

このモードは、pointsなどのジオメトリ関連のアトリビュートに対して実行する際に役立ちます。

Code

VEXpression

スニペット内では、現行Primのパスが@primpathとして利用可能です。 @nameを使って現行アトリビュート値を読み込んだり、アトリビュートと同じ名前の変数に値を書き出すことでアトリビュート値を作成/更新することができます。 他にもVEX USD関数を使ってPrimを制御することができます。 詳細は、VEXスニペットを参照してください。

Attributes to Create

スニペットが新しい変数を作成する時、その変数名がこのパターンに合致した場合にのみ、それに相当するアトリビュートを作成します。 デフォルトは*で、スニペット内で作成されたすべてのVEX変数からアトリビュートを作成します。

Enforce Prototypes

@変数から自動的にアトリビュートを作成するのは便利ですが、間違ったアトリビュートをバインドまたは作成してしまう危険性があります。 これを有効にすると、@変数を使用する前にそれを明示的に宣言している場合にのみバインドが動作します。

Bindings

Autobind by Name

既存のアトリビュートに呼応した@変数を自動的に作成します(デフォルトで有効)。 これを無効にすると、以下のMulti-Parmを使って明示的にバインドされたアトリビュートのみがスニペット内で@変数として利用可能になります。

Number of Bindings

VEX変数にバインドするUSDアトリビュートの数。

Attribute Name

VEX変数にバインドするUSDアトリビュートの名前。

Note

このアトリビュートが既に存在している必要はありません。 このアトリビュートをVEX変数にバインドさせると、VEXがその変数を書き出した時に、このノードがそのアトリビュートを作成します。

Attribute Type

アトリビュートのUSDデータタイプ。 通常では、これをAutoのままに設定します。すると、このノードは既存アトリビュートの既知タイプを使用します。 アトリビュートを作成する際に、このノードがそのVEXタイプを正しいUSDタイプに変換しなかった場合(例えば、tokenが欲しいのにstringになってしまった場合)、その欲しいタイプをここで変更することができます。

VEX Parameter

アトリビュートにバインドさせるVEXパラメータの名前。

Evaluation Node Path

ch()などの特定のVEX関数は、このノード上のパラメータを評価します。 一部の場合において、これらの関数を別のノードを基準にして評価させたい時があります(例えば、デジタルアセット内のノードを使って、親アセットを基準に関数を評価したいことが多いです)。 これは、プログラム内の“現行ノード”として使用するノードの相対ノードパスです。

Export Parameters

VEXパラメータをエクスポートする時、それにバインドされたアトリビュートが存在しなければ、そのアトリビュートが作成されます。 ここにパターンを使用することで、特定のアトリビュートに書き込まないようにしたり、特定のアトリビュートを作成しないようにするオプションを上書きすることができます。 このパターンは、バインドされたアトリビュートではなくてVEXパラメータにマッチします。 アトリビュートは読み込み用にバインドされたままになります。

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(とそのサブクラス)はシーンツリー内のトランスフォームを表現します。