| On this page | |
| Since | 14.0 |
このノードは、キャラクタの群衆向けのエージェントプリミティブを作成するために使います。
エージェントの定義は、Agent出力ノードから以前にベイクされたファイルから取得するか、
シーン内のキャラクタリグから直接取得することができます。
エージェントプリミティブには、以下の参照が含まれています:
-
Rig – エージェントのトランスフォーム階層。
-
Shape Library – エージェント用のジオメトリ。
-
Layers – Shape Libraryからリグにおけるトランスフォームへのジオメトリの割り当て。
-
Clips – エージェントが使用するアニメーション。
Tip
群衆内の境界ボックスが原因でレンダリングがクリップされてしまう場合、 Generate Collision Layer パラメータを有効にして、Collisionレイヤの作成を試みてください。
パラメータ ¶
Group
エージェントの位置として使用する入力ジオメトリのポイント。
Agent Name
エージェントの基本名。
作成した各エージェントに対して、その名前に_‹数›の接尾辞がついたnamePrimitiveアトリビュートが設定されます。
Allow Attributes to Override が有効な時、これが、入力ポイント上のagentname文字列アトリビュートで置換されます。
このパラメータの値は、$AGENTローカル変数によって参照することができます。
Current Layers
エージェントに割り当てるレイヤ(またはレイヤのリスト)。
Allow Attributes to Override が有効な時、これが、入力ポイント上のcurrentlayers文字列配列アトリビュート(またはcurrentlayer文字列アトリビュート)で置換されます。
デフォルトでは、このパラメータは空っぽです。これは Layer Name パラメータの値を使用することを意味します。
ディスクからエージェントを読み込む時、defaultという名前のレイヤが存在すれば、そのレイヤが使用されます。
存在しなければ、エージェント定義内で利用可能な1番目のレイヤが使用されます。
Collision Layers
エージェントに割り当てるコリジョンレイヤ(またはコリジョンレイヤのリスト)。
Allow Attributes to Override が有効な時、このコリジョンレイヤが、入力ポイント上のcollisionlayers文字列配列アトリビュート(またはcollisionlayer文字列アトリビュート)で置換されます。
デフォルトでは、このパラメータは空っぽです。これは Collision Layer Name パラメータの値を使用することを意味します。
ディスクからエージェントを読み込む時、collisionという名前のレイヤが存在すれば、そのレイヤが使用されます。
存在しなければ、エージェント定義内で利用可能な1番目のレイヤが使用されます。
Current Clip
エージェントが走るアニメーションクリップの名前。
Allow Attributes to Override が有効な時、これが、入力ポイント上のcurrentclip文字列アトリビュートで置換されます。
デフォルトでは、このパラメータは空っぽです。これは、エージェント定義内で最初に利用可能なクリップを使用することを意味します。
Clip Offset
再生を開始する現行クリップまでの時間(秒)。
Allow Attributes to Override が有効で、且つ入力ポイントにclipoffset浮動小数点アトリビュートが含まれている時、
各エージェントに対して、これらの値がこのパラメータ値に追加されます。
Apply Clip Locomotion
有効にすると、ロコモーションクリップを簡単に事前確認できるように、エージェントリグから__locomotion__トランスフォームを適用します。
Allow Attributes to Override
Current Layer 、 Current Clip 、 Clip Offset の値が、同等のPointアトリビュートの値がある場合に、それらと置換されます。
Keep Primitives
通常では、エージェントの作成先となるポイント用にプリミティブが削除されます。 これを有効にすると、それらのプリミティブが削除されません。
Reload
エージェント定義を再読み込みします。
Input
エージェントの作成元のソースを指定します。これらの各入力ソースのパラメータの詳細は、以下を参照してください。
Character Rig
シーン内の実際のキャラクタサブネットワーク/アセットからエージェント定義を作成します。
複数のシーン間でエージェント定義を共有してキャッシュのサイズを小さくしたいのであれば、エージェント定義をディスクに保存すると良いでしょう。
Agent Definition Cache
(Agent ROPまたは
Agent Definition Cache SOPを使って既にベイクした)ディスクからエージェント定義を読み込みます。
FBX
キャラクタを含んだFBXファイルから情報を取得します。
USD
UsdSkelキャラクタ(USD SkelRoot Prim)からエージェント定義を作成します。
ソースのUSDステージには、ディスク上のファイルまたはLOPノードを指定することができます。
アニメーションクリップのフレーム範囲は、そのステージのstartTimeCodeとendTimeCodeのメタデータで決まります。
これらのメタデータは、Configure Layer LOPを使って変更することができます。
Input: Character Rig ¶
Character Rig
キャラクタリグを含んだオブジェクトサブネットワークへのパス。
Traverse Outputs
有効にすると、 Character Rig パスを使用して、子の代わりにその出力を走査することによって、インポートしたいノードを指定することができます。
Pattern
インポートしたいノードを制限する際に使用するパターン。
通常のopglob構文と@‹bundle›参照を使ったパターンに対応しています。
Note
ここで指定された相対パスは、 Character Rig ではなくて、このノードが基準になります。
Type
インポートしたいオブジェクトノードタイプをさらに制限するためのオプションのマスク。
特定のタイプがベイクされないようにしたいのであれば、このトグルを無効にしてください。
Minimal Nodes
ディスプレイフラグが有効なオブジェクトのみをベイクします。これをオフにすると、キャラクタリグ内の すべて のノードがアニメーションクリップに取り込まれます。
Keep Transforms for Deforming Shapes
Minimal Nodes が有効な時に、変形ジオメトリを含んだノードをエージェントのリグやクリップに入れるかどうかを指定します。
Shape Library ¶
Convert to Polygon Soups
シェイプライブラリを作成する時にポリゴンプリミティブをPolygon Soupプリミティブに変換します。
これによって、特にMantraによるレンダリングでメモリ使用量を削減することができます。
Layers ¶
Layer Name
オブジェクトのディスプレイフラグを使用して作成した、エージェント用のデフォルトレイヤ。 各エージェントには、最低でも1つのレイヤがなければなりません。
Bounds Scale
デフォルトレイヤ内の各シェイプの境界ボックスのスケールを指定します。 エージェントの境界ボックスの計算方法に関する詳細は、Agent Primitiveのヘルプページを参照してください。
Generate Collision Layer
キャプチャ/変形のウェイトを含んだジオメトリからCollision Layerを生成します。 これは、キャプチャ領域プリミティブを生成し、それに該当するリグのボーンにそのプリミティブを割り当てます。
Collision Layer Name
Generate Collision Layer が有効な時のCollision Layerの名前。
Clip ¶
Clip Name
ベイクしたクリップ(エージェントアニメーション)の名前。 アニメーションは現行シーンから取得されます。
Additional Channels
指定したCHOPノードからチャンネルをエージェントのクリップに追加します。
Frame Range
シーンのグローバルフレーム幅か Start/End/Inc パラメータを使うかどうか。
Start/End/Inc
Frame Range が“Specific”の時、ベイクするための開始フレーム、終了フレーム、増加フレーム。
全ての値には浮動小数点を指定することができます(例、フレーム1.5で開始)。
Shift Clip to Frame 1
指定したフレーム範囲の出力クリップがフレーム1から開始するようにずらします。
Locomotion ¶
Create Locomotion Joint
これを有効にすると、 Convert to In-Place Animation が有効な時に余分に__locomotion__という名前のジョイントが作成されます。
このジョイントは、ロコモーション(移動アニメーション)を抜き出すためのプレースホルダーとして機能します。
Convert to In-Place Animation
( Use Pivot from First Frame パラメータに応じて、原点または最初のフレームの位置を基準に) Locomotionノード の位置を減算することで、 動きのあるキャラクタアニメーションをインプレース(その場歩き)クリップに変換します。
Locomotion Node
キャラクタのロコモーション(移動アニメーション)を制御する Character Rig 内部のオブジェクト(キャラクタを空間内で前進させている移動チャンネルを持つキャラクタリグ内のノード)。
Convert to In-Place Animation が有効な時、キャラクタをインプレース(その場歩き)アニメーションさせるために、Houdiniは、これを使ってキャラクタアニメーションから移動量を減算します。
(Crowd Solverノードは、エージェントアニメーションを移動しているパーティクルに適用するので、そのエージェントアニメーションがその場歩きであると仮定します。)
ロコモーションアニメーションは、__locomotion__という名前のリグの別のトランスフォームで配置されます。
このパラメータが空っぽの場合、 __locomotion__ は Character Rig を使用します。
Locomotion Orient
このパラメータと Locomotion Node を指定した場合、生成される__locomotion__トランスフォームも、 Locomotion Node から Locomotion Orient ノードへのベクトルを使った回転情報を含むようになります。
このトランスフォームが Locomotion Node と同じだった場合、その向きは直接抽出されます。
Locomotion Node が空っぽの場合は、このパラメータは何の効果もありません。
Project Positions on Dominant Axis
Locomotion Node のアニメーションを作成する時、XZ平面内のモーションのDominant Axis(主軸)に沿って位置を投影します。
Crowd Solverでクリップをインプレース(その場歩き)クリップとして使用する場合は、このオプションを有効にすることで、腰のモーションを前後左右に揺らすことができます。
Use Pivot from First Frame
Locomotion Node のアニメーションを作成した時に、原点を基準にその位置を計算します。 このオプションが無効な時(デフォルト)、その位置は、最初のフレームの時の位置が基準になります。
Input: Agent Definition Cache ¶
Cache Directory
エージェント定義ファイルの親ディレクトリ。
このパラメータは、利便性のために提供されていて、その値は、他のファイル名パラメータに$CACHEDIRローカル変数を使用することで参照することができます。
Rig
エージェントのリグファイルのパスを指定します。
Agent Layers
読み込むエージェントレイヤファイルのファイル名パターン。
ここには、特定のエージェント毎にだけマッチしたすべてのファイルが読み込まれるように、${LAYER}ローカル変数を*プレースホルダーとして使用します。
Shape Library
エージェントのシェイプライブラリのパスを指定します。
Clips
読み込むアニメーションクリップのファイル名パターン。
ここには、特定のエージェント毎にだけマッチしたすべてのファイルが読み込まれるように、${CLIP}ローカル変数を*プレースホルダーとして使用します。
クリップの実際の名前は、${CLIP}で合致した文字列、${CLIP}を使用しなかった場合は拡張子なしのフルファイル名から推測されます。
Transform Groups
読み込むトランスフォームグループファイルのファイル名パターン。
ここには、特定のエージェント毎にだけマッチしたすべてのファイルが読み込まれるように、${TRANSFORM_GROUP}ローカル変数を*プレースホルダーとして使用します。
Metadata
エージェントのオプションのメタデータファイルのパスを指定します。
Keep External References
エージェントプリミティブがディスク上のエージェント定義ファイルを参照すべきかどうかを指定します。
有効の場合、エージェントをジオメトリファイルに保存すると、エージェント定義は(自己完結型でも、より大きいジオメトリファイルを
生成する).bgeoあるいは.geoファイルに埋め込むのではなく、エージェント定義ファイルへの参照のみを保存します。
Delay Load Clips
有効にすると、クリップは必要になった時にのみディスクから読み込まれます。 これは、大量のクリップカタログの読み込み時間とメモリ使用量を改善することができますが、クリップの読み込みエラーを即座に報告することができません。
Input: FBX ¶
FBX File
エージェントを生成するFBXファイルのファイル名。
Import Principled Shader Values
有効にすると、シェイプジオメトリ内にmaterial_overrideアトリビュートが作成されます。
このアトリビュートには、HoudiniのPrincipled Shaderマテリアルを使用するのに適した形でFBXからマテリアル値が取り込まれます。
Note
正確なテクスチャパスを取得するために、これは、“Extract Embedded Data”を有効にしてFBXファイルを取り込むので、
ディスク上に.fbmディレクトリを作成し、そのFBXファイルから抽出されたテクスチャをそのディレクトリ内に格納します。
Convert Units
FBXファイルをインポートする時にHoudini単位に変換するかどうかを指定します。
Minimal Nodes
ディスプレイフラグが有効なオブジェクトのみをベイクします。これをオフにすると、キャラクタリグ内の すべて のノードがアニメーションクリップに取り込まれます。
Keep Transforms for Deforming Shapes
Minimal Nodes が有効な時に、変形ジオメトリを含んだノードをエージェントのリグやクリップに入れるかどうかを指定します。
Shape Library ¶
Load as Polygon Soups
FBXファイルからジオメトリを読み込む時にポリゴンプリミティブの代わりにPolygon Soupプリミティブを作成します。
これによって、特にMantraによるレンダリングでメモリ使用量を削減することができます。
Include Unused Capture Regions
スキンメッシュをインポートする時に、キャプチャジョイントの親ジョイントのboneCaptureアトリビュートに単位行列の値のキャプチャ領域が追加されます。
このオプションは、複数のスキンシェイプの静止ジオメトリをアンパックまたはマージすると問題が起きる可能性があるので、古いシーンファイルとの互換性を持たせたい場合にのみ有効にすることを推奨します。
Layers ¶
Layer Name
オブジェクトのディスプレイフラグを使用して作成した、エージェント用のデフォルトレイヤ。 各エージェントには、最低でも1つのレイヤがなければなりません。
Bounds Scale
デフォルトレイヤ内の各シェイプの境界ボックスのスケールを指定します。 エージェントの境界ボックスの計算方法に関する詳細は、Agent Primitiveのヘルプページを参照してください。
Generate Collision Layer
キャプチャ/変形のウェイトを含んだジオメトリからCollision Layerを生成します。 これは、キャプチャ領域プリミティブを生成し、それに該当するリグのボーンにそのプリミティブを割り当てます。
Collision Layer Name
Generate Collision Layer が有効な時のCollision Layerの名前。
Clip ¶
Clip Name
アニメーションクリップ(s)の名前を指定します。クリップは、FBXファイル内のテイク毎に作成されます。
${FBX_TAKE_NAME}と${FBX_TAKE_INDEX}のローカル変数を使用することで、FBXファイルのテイクの名前とインデックスに基づいたクリップ名を生成することができます。
Override Sample Rate
FBXファイルに保存されているサンプルレートの代わりに Sample Rate パラメータの値を使用するかどうかを指定します。 これは、オリジナルのFBXファイルをエクスポートしたアプリケーションが正しくサンプルレートを設定していなかった時に役立ちます。
Sample Rate
Override Sample Rate が有効な時にクリップに使用されるサンプルレート。
Locomotion ¶
Create Locomotion Joint
これを有効にすると、 Convert to In-Place Animation が有効な時に余分に__locomotion__という名前のジョイントが作成されます。
このジョイントは、ロコモーション(移動アニメーション)を抜き出すためのプレースホルダーとして機能します。
Convert to In-Place Animation
( Use Pivot from First Frame パラメータに応じて、原点または最初のフレームの位置を基準に) Locomotionノード の位置を減算することで、 動きのあるキャラクタアニメーションをインプレース(その場歩き)クリップに変換します。
Locomotion Node
キャラクタのロコモーション(移動アニメーション)を制御する Object Subnet 内部のオブジェクト(キャラクタを空間内で前進させている移動チャンネルを持つキャラクタリグ内のノード)。
Convert to In-Place Animation が有効な時、キャラクタをインプレース(その場歩き)アニメーションさせるために、Houdiniは、これを使ってキャラクタアニメーションから移動量を減算します。
(Crowd Solverノードは、エージェントアニメーションを移動しているパーティクルに適用するので、そのエージェントアニメーションがその場歩きであると仮定します。)
ロコモーションアニメーションは、__locomotion__という名前のリグの別のトランスフォームで配置されます。
このパラメータが空っぽの場合、 __locomotion__ はObject Subnetを使用します。
Locomotion Orient
このパラメータと Locomotion Node を指定した場合、生成される__locomotion__トランスフォームも、 Locomotion Node から Locomotion Orient ノードへのベクトルを使った回転情報を含むようになります。
このトランスフォームが Locomotion Node と同じだった場合、その向きは直接抽出されます。
Locomotion Node が空っぽの場合は、このパラメータは何の効果もありません。
Project Positions on Dominant Axis
Locomotion Node のアニメーションを作成する時、XZ平面内のモーションのDominant Axis(主軸)に沿って位置を投影します。
Crowd Solverでクリップをインプレース(その場歩き)クリップとして使用する場合は、このオプションを有効にすることで、腰のモーションを前後左右に揺らすことができます。
Use Pivot from First Frame
Locomotion Node のアニメーションを作成した時に、原点を基準にその位置を計算します。 このオプションが無効な時(デフォルト)、その位置は、最初のフレームの時の位置が基準になります。
Input: USD ¶
Source
ソースのUSDステージをLOPノードまたはディスク上のUSDファイルのどれかで指定します。
LOP Path
LOPノードのパスを指定します。 このノードから出力されたUSDステージ内のUsdSkelキャラクタからエージェント定義が構築されます。
USD File
ディスク上のUSDファイルのパス。
SkelRoot Primitive Path
USDステージ内のSkelRoot Primのパス。
このパスが空っぽの場合、ステージ内の最初のSkelRootPrimが使用されます。
Purpose
USD階層のセクションを、特定の用途で使用するものであるとマークすることができます。
USDパックプリミティブをアンパックする時に、Purposeがdefaultまたは指定したPurposeのどれかでマークされているセクションのみが走査されます。
Layers ¶
Layer Name
オブジェクトのディスプレイフラグを使用して作成した、エージェント用のデフォルトレイヤ。 各エージェントには、最低でも1つのレイヤがなければなりません。
Bounds Scale
デフォルトレイヤ内の各シェイプの境界ボックスのスケールを指定します。 エージェントの境界ボックスの計算方法に関する詳細は、Agent Primitiveのヘルプページを参照してください。
Generate Collision Layer
キャプチャ/変形のウェイトを含んだジオメトリからCollision Layerを生成します。 これは、キャプチャ領域プリミティブを生成し、それに該当するリグのボーンにそのプリミティブを割り当てます。
Collision Layer Name
Generate Collision Layer が有効な時のCollision Layerの名前。
Clip ¶
Clip Name
ベイクしたクリップ(エージェントアニメーション)の名前。 アニメーションは現行シーンから取得されます。
Locomotion ¶
Create Locomotion Joint
これを有効にすると、 Convert to In-Place Animation が有効な時に余分に__locomotion__という名前のジョイントが作成されます。
このジョイントは、ロコモーション(移動アニメーション)を抜き出すためのプレースホルダーとして機能します。
Convert to In-Place Animation
( Use Pivot from First Frame パラメータに応じて、原点または最初のフレームの位置を基準に) Locomotionノード の位置を減算することで、 動きのあるキャラクタアニメーションをインプレース(その場歩き)クリップに変換します。
Locomotion Node
キャラクタのロコモーションを制御するジョイント(空間内で前方にジョイントを移動させる移動チャンネルを持ったスケルトン内のジョイント)の名前。
Convert to In-Place Animation が有効な時、Houdiniは、このジョイントを使ってキャラクタアニメーションから移動を除去して、キャラクタをその場に維持させます。
(Crowd Solverノードは、エージェントを移動パーティクルに取り付けるので、そのエージェントアニメーションがその場アニメーションであることを前提にしています。)
ロコモーションアニメーションは、リグ内で__locomotion__という名前の別トランスフォームに格納されます。
このパラメータが空っぽの場合、__locomotion__はObject Subnetを使用します。
Locomotion Orient
このパラメータと Locomotion Node を指定すると、生成される__locomotion__トランスフォームには、 Locomotion Node から Locomotion Orient ジョイントに向かったベクトルを使った回転情報も格納されます。
このトランスフォームが Locomotion Node と同じだった場合、その向きは直接抽出されます。
Locomotion Node が空っぽの場合、このパラメータは何の効果もありません。
入力 ¶
Points to spawn agents
指定した場合、入力ポイントを使ってエージェントを大量発生させます。
これらのポイントに特定のアトリビュートを含めて、エージェントのプロパティを制御することができます。
$AGENTローカル変数を使用すれば、複数のエージェント定義を使用することができます。
ローカル変数 ¶
AGENT
エージェントの名前。
Allow Attributes to Override が有効な時は、これは、その入力ポイント上のagentname文字列アトリビュートの値、あるいは
Agent Name パラメータの値のどちらかです。
CACHEDIR
利便性のために提供されているローカル変数で、 Cache Directory パラメータの値を容易に参照することができます。
LAYER
読み込むレイヤファイルを指定するために、 Agent Layers パラメータでワイルドカードとして使用します。
CLIP
読み込むクリップファイルを指定するために、 Clips パラメータでワイルドカードとして使用します。
TRANSFORM_GROUP
読み込むトランスフォームグループファイルを指定するために、 Transform Groups パラメータでワイルドカードとして使用します。
FBX_TAKE_NAME
Clip Name パラメータを評価し、 Input が FBX の時、現行テイクの名前をFBXファイルに格納します。
FBX_TAKE_INDEX
Clip Name パラメータを評価し、 Input が FBX の時、現行テイクのインデックスをFBXファイルに格納します。
| See also |