関数
computeLocalTransforms(rig, xforms)
→ tuple
of hou.Matrix4
指定したリグを使って、トランスフォームをワールド空間からローカル空間に変換します。
rig
トランスフォーム階層を指定したhou.AgentRig。
xforms
リグ内の各ジョイントのワールド空間のトランスフォームを含んだhou.Matrix4シーケンス。 このシーケンス長がhou.AgentRig.transformCount()と同じでない場合はhou.InvalidSizeを引き起こします。
computeWorldTransforms(rig, xforms)
→ tuple
of hou.Matrix4
指定したリグを使って、トランスフォームをローカル空間からワールド空間に変換します。
rig
トランスフォーム階層を指定したhou.AgentRig。
xforms
リグ内の各ジョイントのローカル空間のトランスフォームを含んだhou.Matrix4シーケンス。 このシーケンス長がhou.AgentRig.transformCount()と同じでない場合はhou.InvalidSizeを引き起こします。
computeRotationLimits(rig, clips, transform, parent_transform)
→ dict
of str
to values
用意したクリップのモーション範囲に基づいて、指定したジョイントの回転制限を計算します。
戻り値は、以下のキーを含んだ辞書です:
-
anchor_pos
: コーンのアンカー位置を含んだhou.Vector3。 -
rotation
: コーンの向きを含んだhou.Vector3。 -
child_rotation
: 子の向きを含んだhou.Vector3。 -
twist_limits
: Twist軸の回転制限を含んだhou.Vector2。 -
up_limits
: Up軸の回転制限を含んだhou.Vector2。 -
out_limits
: Out軸の回転制限を含んだhou.Vector2。
rig
clips
hou.AgentClipのリスト。
transform
エージェントのリグのトランスフォームのインデックス。
parent_transform
エージェントのリグの親トランスフォームのインデックス。
findAgentDefinitions(geometry, group = "")
→ tuple
of hou.AgentDefinition
ジオメトリ内の固有のエージェント定義のリストを返します。
これは、以下のコードと等価ですが、それよりも非常に高速です。
definitions = set() for prim in geometry.globPrims(group): if prim.type() == hou.primType.Agent: definitions.add(prim.definition()) return definitions
geometry
group
検査するプリミティブをフィルタリングするためのオプションのグループ文字列。 このパターン形式は、SOPノードのgroupパラメータで使用する形式と同じです。
findShapeDeformer(name)
→ hou.AgentShapeDeformer
指定した名前のシェイプデフォーマを検索します。 そのようなシェイプデフォーマがなければ、Noneを返します。
replaceAgentDefinitions(geometry, new_definition_map, group = "")
ジオメトリ内のエージェント定義を新しいバージョンに置換します。 これは、ジオメトリ内の各エージェント定義を修正する時に便利な関数です。特にhou.crowds.findAgentDefinitions()を使用する時にも便利です。
例:
defns = hou.crowds.findAgentDefinitions(geo, group) new_defn_map = {} for defn in defns: new_defn = defn.freeze() new_defn_map[defn] = new_defn # クリップを新しいエージェント定義に追加します。 new_defn.addClip(...) # グループ内のすべてのエージェントを、それぞれの新しいエージェント定義に切り換えます。 hou.crowds.replaceAgentDefinitions(geo, new_defn_map, group)
geometry
編集可能なhou.Geometry。
new_definition_map
各hou.AgentDefinitionを置換するhou.AgentDefinitionにマッピングした辞書。
group
編集するプリミティブをフィルタリングするためのオプションのグループ文字列。 このパターン形式は、SOPノードのgroupパラメータで使用する形式と同じです。
shapeDeformers()
→ tuple
of hou.AgentShapeDeformer
利用可能なシェイプデフォーマのリストを返します。