On this page | |
Since | 20.0 |
このノードは、ターゲットスケルトンに対してラグドールRBDシミュレーションを実行します。 また、このノードはラグドールの計算の実行を簡素化したDOPネットワークのラッパーでもあります。
以下は、このノードの入力です:
-
1番目の入力には、計算したいKineFXスケルトンを接続します。
-
2番目の入力には、例えば
Ragdoll Collisions Shapes SOPでセットアップされたコリジョンシェイプを接続します。
-
3番目の入力には、コライダーとして作用させたいジオメトリをオプションで接続します。この入力の形式は、有効なパックジオメトリ、または、ジオメトリ自体に拘束セットが含まれているならば
RBD Pack SOPノードなどでセットアップされたRBDパックジオメトリでなければなりません。
このノードの中に入って、DOPノードを追加したり、カスタムフォースを適用することができます。
パラメータ ¶
Reset Simulation
全体のシミュレーションキャッシュをクリアします。
詳細は、DOP Networkを参照してください。
Frame Range
シミュレーションのフレーム範囲。 シミュレーションは開始フレームでクックを開始し、終了フレームで停止します。
Activation Frame
有効にすると、ラグドールは初期段階からこのフレームになるまで非アクティブになります。 これを使用することで、ラグドールがアクティブになる時のキーフレームを打つことができます。
Time Scale
ソルバが使用するタイムステップのスケール値(乗数)。 これを使用することで、バレットタイムのような効果を出すことができます。つまり、Houdiniのプレイバーとは異なるレートでBullet Solverの物理が実行されます。 値を2にするとオブジェクトが2倍の速さで落下するようになり、値を0.1にすると0.1倍の速さで落下するようになります。 このパラメータはアニメーション可能です。
Number of Substeps
シミュレーションステップ毎のサブステップの数。 この数は、Bulletで内部的に使用されます。 この数を増やすと、シミュレーションの解像度が上がります。
Tip
高速に移動するオブジェクトが検出されないコリジョン問題を修復する1つの方法は、このサブステップ数を上げることです。
Constraint Iterations
ソルバで使用される拘束の反復数。 反復数が多いほど、拘束と衝突のハンドリングがより正確になります。
Bullet World Scale
内部シミュレーションワールドをこの値でスケールし、出力ジオメトリをこの値の逆数でスケールします。 微小オブジェクトが存在する時、スケールを大きくしてシミュレーションすることで、そのシミュレーションのパフォーマンスと安定性を良くすることができます。
Warning
Bulletワールドをスケールする場合、編集可能なサブネット内で適用するカスタムフォースは、そのスケールを考慮する必要が出てきます。
Gravity
有効にすると、重力がスケルトンに加わります。
Ground Type
None
地面を無効にします。
Ground Plane
シミュレーションに地面を追加します。
Position
地面の中心位置。
このパラメータは、 Ground Type が Ground Plane に設定されている場合に利用可能です。
Rotation
地面の回転角度。
このパラメータは、 Ground Type が Ground Plane に設定されている場合に利用可能です。
Bounce
オブジェクトの弾力性。 Bounceが1.0の2つのオブジェクトが衝突すると、それらのオブジェクトはエネルギーを消失せずに跳ね返ります。 Bounceが0.0の2つのオブジェクトが衝突すると、それらのオブジェクトは停止します。
このパラメータは、 Ground Type が Ground Plane に設定されている場合に利用可能です。
Friction
オブジェクトの摩擦係数。 0の値は、摩擦なしを意味します。
これは、接線Velocityが衝突と静止接触で影響を受ける強さを制御します。
このパラメータは、 Ground Type が Ground Plane に設定されている場合に利用可能です。
Tip
RBD Configure SOPを使用することで、コリジョンオブジェクトに高度なプロパティを構成することができます。
Collision Type
コリジョンオブジェクトの初期状態を指定します。
Static
オブジェクトはシミュレーションで動かず、他のオブジェクトにも反応しません。
Animated (Rigid)
オブジェクトのトランスフォームはタイムステップ毎に更新されますが、そのオブジェクトはシミュレーションで他のオブジェクトに反応しません。 これは、 Animated (Deforming) よりも効率が良く、衝突検出の精度が良くなりますが、オブジェクトのアニメーションが剛体の動きに従う必要があります。
Animated (Deforming)
オブジェクトのコリジョンシェイプはタイムステップ毎に再構築されますが、そのオブジェクトはシミュレーションで他のオブジェクトに反応しません。
Active
オブジェクトはシミュレーションされ、そのシミュレーションで他のオブジェクトに反応します。
Collision Shape
Bulletエンジンで使用されるオブジェクトを表現したシェイプ。 Display Collision Geometry パラメータを使用することで、このコリジョンシェイプを可視化することができます。
Convex Hull
オブジェクトのデフォルトのシェイプ。
Bullet Solverは、ジオメトリポイントの凸ハルからコリジョンシェイプを作成します。
Concave
Bullet Solverは、ジオメトリをポリゴンに変換し、その結果の三角形から凹コリジョンシェイプを作成します。
このシェイプは、トーラスや中空チューブなどの凹オブジェクトをシミュレーションする場合に役立ちます。
しかし、通常では凸ハル表現の方がパフォーマンスが良いので、必要な場合にのみ凹表現を使用することを推奨します。
Box
オブジェクトの境界ボックス。
Capsule
オブジェクトの境界カプセル。
Cylinder
オブジェクトの境界円柱。
Compound
Bulletプリミティブ(ボックス、球、円柱を含む)で構成された複雑なシェイプを作成します。
Bake ODE SOPを使用する必要があります。
Sphere
オブジェクトの境界球。
Plane
静的な地面。
Bounce
オブジェクトの弾力性。 Bounceが1.0の2つのオブジェクトが衝突すると、それらのオブジェクトはエネルギーを消失せずに跳ね返ります。 Bounceが0.0の2つのオブジェクトが衝突すると、それらのオブジェクトは停止します。
Friction
オブジェクトの摩擦係数。 0の値は、摩擦なしを意味します。
これは、接線Velocityが衝突と静止接触で影響を受ける強さを制御します。
Rest Pose Attribute
RestトランスフォームPointアトリビュートの名前。
Note
ソルバが期待通りの挙動になるようにするために、 Rest Pose Attribute はRagdoll Collision Shapes SOPのコリジョンシェイプの設定で使用されているRestポーズアトリビュートと同じ名前にしてください。
Configuration Attribute
(例えば)Configure Joint Limits SOPで定義されているような、回転制限の読み込み先の構成Pointアトリビュートの名前。
Pin Root
有効にすると、親コリジョンシェイプを持たないコリジョンシェイプが自由に移動できないようにスケルトンに取り付けたままになるように拘束されます。 これは、スケルトンのサブセットのみ(例えば、尻尾)をシミュレーションする場合に役立ちます。
Group
有効にすると、指定したジョイントグループにこの構成が適用されます。
Match World Transforms
有効にすると、 Position Stiffness 、 Position Damping 、 Orientation Stiffness 、 Orientation Damping に応じて、ジョイントをターゲットスケルトンのワールドトランスフォームに一致させようと試みます。 これは、特定のジョイントがターゲットアニメーションに追従するようにピン留めするのに役立ちます。
Position Stiffness
Match World Transforms が有効な時、ここには、ワールド空間のターゲット位置に一致させようと試みるフォースの強度を指定します。
この値は、バネの周波数に相当します。
Position Damping
Match World Transforms が有効な時、ここには、ワールド空間のターゲット位置に一致させようと試みる時にモーションに適用される減衰量を指定します。 0の値は減衰なし、1の値は振動が回避されるほど十分な減衰が用意されます。 0から1の間の値は(ある程度の減衰がある)振動を許可し、1より大きい値は振動のない大きく減衰するモーションが用意されます。
この値は、バネの減衰率に相当します。
Orientation Stiffness
Match World Transforms が有効な時、ここには、ワールド空間のターゲット方向に一致させようと試みるフォースの強度を指定します。
この値は、バネの周波数に相当します。
Orientation Damping
Match World Transforms が有効な時、ここには、ワールド空間のターゲット方向に一致させようと試みる時にモーションに適用される減衰量を指定します。 0の値は減衰なし、1の値は振動が回避されるほど十分な減衰が用意されます。 0から1の間の値は(ある程度の減衰がある)振動を許可し、1より大きい値は振動のない大きく減衰するモーションが用意されます。
この値は、バネの減衰率に相当します。
Match Local Transforms
有効にすると、 Bend Stiffness 、 Bend Damping に応じて、ジョイントをターゲットスケルトンのローカルトランスフォームに追従させようと試みます。 これは、ラグドールを強制的にスケルトンのワールド空間トランスフォームに一致させることなく、ターゲットアニメーションからモーションを継承するのに役立ちます。
Bend Stiffness
Match Local Transforms が有効な場合、ジョイントがローカル回転の変更に抵抗する強さ、または、ジョイントがターゲットアニメーションのローカルトランスフォームへの一致を試みる強さを指定します。
この値は、バネの周波数に相当します。
Bend Damping
Match Local Transforms が有効な場合、ジョイントがローカル回転の変更に抵抗する時、または、ジョイントがターゲットアニメーションのローカルトランスフォームに一致させる時に適用される減衰量を指定します。 0の値は減衰なし、1の値は振動が回避されるほど十分な減衰が用意されます。 0から1の間の値は(ある程度の減衰がある)振動を許可し、1より大きい値は振動のない大きく減衰するモーションが用意されます。
この値は、バネの減衰率に相当します。
Physical Properties
スケルトン内のジョイントのグループの物理特性を指定します。
Group
有効にすると、ここで指定したジョイントグループに物理特性構成が適用されます。
Density
オブジェクトの質量は、体積とこの密度の乗算で決まります。
Bounce
オブジェクトの弾力性。 Bounceが1.0の2つのオブジェクトが衝突すると、それらのオブジェクトはエネルギーを消失せずに跳ね返ります。 Bounceが0.0の2つのオブジェクトが衝突すると、それらのオブジェクトは停止します。
Friction
オブジェクトの摩擦係数。 0の値は、摩擦なしを意味します。
これは、接線Velocityが衝突と静止接触で影響を受ける強さを制御します。
Constraints
スケルトン内のジョイントと Collision Geometry 入力の間にカスタム拘束を追加します。
Joint Group
有効にすると、ここで指定したジョイントに対して外部拘束が作成されます。
Target
拘束の取り付け先を指定します。
Collision Geometry
拘束を Collision Geometry 入力に取り付けます。
Skeleton
拘束をスケルトン内の他のジョイントに取り付けます。
Constrain To
Target が Collision Geometry に設定されている時、ここには、拘束の取り付け先となる Collision Geometry 入力のコンポーネントを指定します。
Closest Location on Primitive
拘束を Collision Geometry 入力上の一番近いサーフェス位置に取り付けます。
Closest Point
拘束を Collision Geometry 入力上の一番近いポイントに取り付けます。
Target Primitives Group
Constrain To が Closest Location on Primitive に設定されている時、ここには、 Closest Location on Primitive の検索対象となる Collision Geometry 入力のプリミティブグループを指定します。
Target Points Group
Constrain To が Closest Point に設定されている時、ここには、 Closest Point の検索対象となる Collision Geometry 入力のポイントグループを指定します。
Target Joint Group
Target が Skeleton に設定されている時、ここには、拘束の取り付け先となるターゲットジョイントを指定します。
Use Target Transform
有効にすると、取り付けられた拘束ポイントがターゲットのtransform
アトリビュートに一致するように向きが変更されます。
Note
Degrees of Freedom の設定に回転が含まれている場合、このオプションは、拘束された Joint Group を強制的にターゲットの向きに一致させます。
Max Distance
有効にすると、ここには、拘束先となるターゲットジオメトリが検索される Joint Group からの最大距離を指定します。 このパラメータは、 Target が Collision Geometry に設定されている場合に利用可能です。
Degrees of Freedom
拘束が位置、向き、または両方のどちらに影響を与えるのかを指定します。
Rest Length Scale
拘束の自然長がスケールされます。 1の値は、自然長を Joint Group からターゲット位置までの距離に設定します。
Stiffness
ターゲットトランスフォームに一致させようとするフォースの強度を指定します。
この値は、バネの周波数に相当します。
Damping Ratio
ターゲットトランスフォームに一致させようとする時にモーションに適用される減衰量を指定します。 0の値は減衰なし、1の値は振動が回避されるほど十分な減衰が用意されます。 0から1の間の値は(ある程度の減衰がある)振動を許可し、1より大きい値は振動のない大きく減衰するモーションが用意されます。
この値は、バネの減衰率に相当します。
Display Reference Collision Shapes
有効にすると、ターゲットアニメーションに追従するように変形されたキャラクタのコリジョンシェイプが視覚化されます。 これと Offset を組み合わせて使用することで、シミュレーション結果の隣にターゲットアニメーションを表示させることができます。
Display Collision Shapes
有効にすると、シミュレーションされたスケルトンに追従するように変形されたキャラクタのコリジョンシェイプが視覚化されます。
Display Ground Plane
有効にすると、地面コリジョンジオメトリが視覚化されます。
Display Constraints
有効にすると、取り付けられている拘束が視覚化されます。
Display Collision Geometry
有効にすると、コリジョンオブジェクトが視覚化されます。
Offset
オリジナルのスケルトンの隣にガイドジオメトリが表示できるようにガイドジオメトリを移動させます。
入力 ¶
Skeleton
ラグドールシミュレーションが実行されるスケルトン。
Collision Shapes
Skeleton入力に属したコリジョンシェイプ。
Collision Geometry
シミュレーションのコライダーとして使用するジオメトリ。
この入力の形式は、パックジオメトリまたはRBD Pack SOPなどでセットアップされるRBDパックジオメトリでなければなりません。
出力 ¶
Skeleton
シミュレーション後の入力スケルトン。
See also |