| On this page | |
| Since | 19.0 |
概要 ¶
このノードは、Muscle Vellum拘束の複数レイヤを駆動するアトリビュートを作成および変更します。その後、拘束は
Muscle Solver Vellum SOPによって使用され、以下を行ないます:
-
Muscleをボーンに拘束し、Muscleがボーン上に留まり(そして落ちずに)、ボーンのアニメーションの間は全体がしっかりとボーンの動きに追従するようにします。
-
MuscleをMuscleに拘束して、シミュレーション中、Muscleのまとまりやグループを維持するようにします。
-
Muscleの両端を拘束して、柔軟性を低くし、ボーンのアニメーションに密接に追従するようにします。
-
周辺のVelocityをMuscleに伝えます。
Note
Otis Solverを使用する場合、代わりに
Muscle Constraint Properties Otisを使用してください。
詳細は、キャラクタをVellumからOtisに移行させる方法を参照してください。
How to
| To... | Do this |
|---|---|
|
MuscleにMuscleプロパティをセットアップする |
|
|
Muscleの可視化のためのビューポートをセットアップする |
|
ステート ¶
ホットキーまたは操作 |
アクション |
|---|---|
Aを押す |
ビューポートステートで現在選択されているMuscleに、新しいProperty Assignmentsマルチパラメータを追加します。 |
Bを押す |
Muscle to Boneの候補選択モードをオンにします。新しいMuscle to Boneの候補として追加したいMuscleをクリックします。選択したMuscleは、現在選択されているProperty Assignmentsマルチパラメータの Muscle to Bone > Attachment Candidateリストに追加されます。 |
Cを押す |
Muscle to Muscleの候補選択モードをオンにします。新しいMuscle to Muscleの候補として追加したいMuscleをクリックします。選択したMuscleは、現在選択されているProperty Assignmentsマルチパラメータの Muscle to Muscle > Attachment Candidateリストに追加されます。 |
パラメータ ¶
Visualize
このノードのビューポートステートで現在表示されるメインの拘束プロパティを決定します。 ボタンをクリックすると、それに関連するタブも選択されます。
Muscle Ends
ビューポートステートでMuscleの領域にそのMuscleの両端を示したヒートマップを表示します。 この領域は、拘束がMuscleをボーンに堅く付着させている領域を示します。
Muscle to Muscle
ビューポートステートでMuscle間の付着拘束を示したラインを表示します。 これらの付着は、お互い近くにあるMuscleのグループを保持し、シミュレーション中にMuscleがお互い離れないようにします。
Muscle to Bone
ビューポートステートでMuscleとボーン間の付着を示したラインとヒートマップを表示します。 このラインは、Muscleとそのボーンのボーン面側間の頂点接続を示します。 このヒートマップは、他のMuscleよりもそのボーンに近いMuscleの領域を示します。 このヒートマップのカラーが明るいほど、そのMuscleとボーンとの拘束のStiffness値が高いです。
Collision Radius
ビューポートステートでMuscleの衝突半径を表示します。
Modified
ビューポートステートで特定の拘束またはその視覚化効果なしの、通常の方法でMuscleを表示します。
Display Bone Geometry
有効にすると、ビューポートステートでこのノードの2番目の入力が表示されます。 ボーンを2番目の入力に指定した場合、そのボーンのみが表示されます。
Muscle End Radii Use World Space Distances
無効 にすると、End Regionsは、指定したMuscleから計算された長さに比例するようになります。
Muscleから計算された長さは、musclelength Pointアトリビュートに格納されます。
このmusclelengthアトリビュートが既に存在していた場合、その既存のアトリビュートがその計算の代わりに使用されます。
このパラメータを 有効 にすると、 End Regions は、musclelengthアトリビュートを無視し、Muscle終了マスク値は ワールド単位 で測定されます。
Muscle Endsは、axialrampアトリビュートを使用して、個々のMuscleの範囲を決めます。
Axial Ramp Correction
有効にすると、axialrampアトリビュートは、上方向に対してより敏感になります。
これは、 Muscle End Radius パラメータ間の相関関係、影響を受けるMuscleの向きに影響を与えます。
無効にすると、この向きは幾分無作為な感じに見える場合があります。
axialrampアトリビュートは、まだ存在していない場合にのみ計算されます。
したがって、このトグルは、入力のMuscleジオメトリにaxialrampアトリビュートがない場合にのみ効果があります。
Use Multiparm Tab Labels
これを指定した場合はProperty Labelを、指定しなかった場合はGroupを使用して、マルチパラメータタブにラベルを付けます。
グループの@muscle_id=の部分はすべて除去されます。
オフの場合は、代わりに数字が使用されます。
Strip Prefix from Tab Labels
マルチパラメータラベルが有効な場合、ラベルの最初のアンダースコアより前にある 任意の文字列 が除去されます。
これは、片側のみを扱う際に、ラベルからL_などの接頭辞を除去するのに役立ちます。
Property Assignments ¶
最初に Property Assignment マルチパラメータを作成する時、すべてのパラメータはデフォルトで オフ になっており、それぞれのパラメータが デフォルト値 を持ちます。 そのマルチパラメータで使用したいパラメータのみを有効にして、デフォルトの値を維持あるいは変更できます。Muscleプロパティのデフォルト値を確認したい場合は、パラメータの変更されていない Absolute 値を見ます。 (パラメータ名の横にあるチェックボックスが) オン になっているパラメータのみが、それぞれのMuscleに適用されます。
AbsoluteパラメータとRelativeパラメータ
各パラメータには Absolute または Relative バージョンの設定があります。
パラメータが Absolute の時、値は明示的で、 上書き として機能します。例えば、マルチパラメータの タブ1 の Shape Stiffness が100で、マルチパラメータの タブ2 の Shape Stiffness が50の場合、Muscle Solverが使用するShape Stiffnessのプロパティ値は、50のsolidshapestiffnessになります。
パラメータが Relative の時、値はパラメータのデフォルト値の乗数(すべての Property Assignment マルチパラメータタブでパラメータの Relative バージョンのみが使用されている場合)、または前のタブの Absolute 値の乗数になります。例えば、マルチパラメータの タブ1 の Shape Stiffness が100で、マルチパラメータの タブ2 の Relative Shape Stiffness が2の場合、Muscle Solverが使用するShape Stiffnessのプロパティ値は、200のsolidshapestiffnessになります。
Number of Assignments
-
定義済みのMuscleプロパティ設定アサインメントの数。
-
Property Assignment マルチパラメータを追加または削除します。
Property Assignmentマルチパラメータタブ
-
単一のマルチパラメータタブは、単一のMuscleまたは複数のMuscle(
muscle_ids)のMuscleプロパティ設定を定義できます。Groupを参照してください。 -
単一のMuscleは、複数のマルチパラメータタブに表示されます。
-
各マルチパラメータタブは、最小番号のタブから最大番号のタブまで順番に処理されます。そのため、Muscleが1つ以上のマルチパラメータタブに表示される場合、最も大きい番号のタブのプロパティ設定値が優先され、より小さい番号のタブの設定は 乗算 ( Relative に設定時)または 上書き ( Absolute に設定時)されます。
詳細は、Muscle Property Assignmentsの扱い方を参照してください。
Group
現在の Property Assignment マルチパラメータの設定に割り当てるMuscleを決定します。
このパラメータは、@muscle_idグループ構文でフォーマットされた単一のMuscleまたはMuscleのリストのみ受け入れます。例えば、@muscle_id=L_biceps、@muscle_id=L_biceps,L_triceps、@muscle_id=L_biceps @muscle_id=L_triceps @muscle_id=L_deltoidなどです。このパラメータは、通常のジオメトリグループを受け入れ ません 。
以下の方法で、 Group パラメータのグループ選択を指定できます:
-
ビューポートステートでAを押し、グループに追加したいMuscleを選択してから、Enterを押します。 新しい Property Assignment マルチパラメータが作成され、選択したMuscleがその Group に追加されます。
-
Parameter Editor で、 Group パラメータの横の矢印アイコンをクリックし、グループに追加したいMuscleをビューポートステートから選択して、Enterを押します。 選択したMuscleが Group に追加されます。
-
パラメータエディタで、グループに追加したいMuscleの名前(
muscle_ids)を Group フィールドに手動で入力します。
Tip
Group パラメータフィールドを 空 のままにすると、マルチパラメータ設定がすべてのMuscleに適用されます。
Property Label
このパラメータは、このマルチパラメータタブ上で設定されたプロパティに名前を付けたり分かりやすくするために、説明的なテキストの文字列を入力することができます。
Enable All
オフにすると、このマルチパラメータインスタンスを削除することなくバイパスすることができます。
Muscle Ends ¶
この拘束はMuscleの 両端 近くにあるMuscleの付着部に適用されます。 この拘束は2つの方法のいずれかで完全に無効または適用することができます:
-
ターゲット拘束として。シミュレーション中、Muscleの両端は事前にアニメーションされた位置に追従しようとします。
-
最近接ボーンへの付着として。MuscleはTポーズポジションで近くにあるボーンに付着します。
Muscleネットワーク内の
Muscle Solver Vellum SOPノードのMuscle Endsパラメータを設定することで、使用する拘束メソッドを選択することができます。
Stiffness
Override
Muscleの端からボーンまでの距離が自然長よりも 長い 時の拘束の強度、Muscleの端がボーンから 離れて 動く許容量を決めます。 また、Muscleの端がボーンのアニメーションに追従する厳密さも決めます。
Relative Stiffness
Multiplier
Stiffness パラメータのデフォルト値、または、前のタブで設定されたAbsolute値の乗数に、この値を乗算します。 例えば、マルチパラメータタブ1でStiffness=100、マルチパラメータタブ2でRelative Stiffness=2に設定されている場合、Stiffness値は200となります。
Damping
Override
イテレーションの度に拘束のエネルギーを減らし、付着の維持を試みる際に失われるエネルギー量を決めます。 Damping値が高い場合、付着が鈍くなります。付着を弱めるのではなく、単に付着の反応を遅くします。 例えば、粘りのような付着になり、Muscleがボーンに直接追従するというよりもボーンの方へ泳いで行く感じになります。 Damping値を低くすると、Muscleに振動や微震が起こります。
Relative Damping
Multiplier
Damping パラメータのデフォルト値、または、前のタブで設定されたAbsolute値の乗数に、この値を乗算します。 例えば、マルチパラメータタブ1でDamping=0.25、マルチパラメータタブ2でRelative Damping=2に設定されている場合、Damping値は0.5となります。
Distance Threshold
Override
Muscleの端の付着先の対象の検索範囲を決めます。 通常、Muscleのヒートマップ領域が近くのボーンに付着します。 この拘束は、この距離内にある付着先を検索し、その閾値内にあるボーンの検索を試みます。 ボーンが見つかれば、Muscleの端がそのボーンに付着します。 その閾値内でボーンが見つからなければ、Muscleの端は付着されないままになります。
Relative Distance Threshold
Multiplier
Distance Treshhold パラメータのデフォルト値、または、前のタブで設定されたAbsolute値の乗数に、この値を乗算します。 例えば、マルチパラメータタブ1でDistance Threshold=0.25、マルチパラメータタブ2でRelative Distance Threshold=2に設定されている場合、Distance Threshold値は0.5となります。
Compression Stiffness
Override
Muscleの端からボーンまでの距離が自然長よりも 短い 時の拘束の強度、Muscleの端がボーンの 方へ 動く許容量を決めます。 また、Muscleの端がボーンに縛られる堅さも決めます。
Tip
ボーンの動きが原因でMuscleの端が不自然に突き出る場合、 Compression Stiffness を使用してMuscleの端をボーンの方へ押し寄せることで、コリジョンとフォースがMuscleの端に影響を与えるようになります。
Relative Compression Stiffness
Multiplier
Compression Stiffness パラメータのデフォルト値、または、前のタブで設定されたAbsolute値の乗数に、この値を乗算します。 例えば、マルチパラメータタブ1でCompression Stiffness=0.25、マルチパラメータタブ2でRelative Compression Stiffness Scale=2に設定されている場合、Compression Stiffness値は0.5となります。
Rest Length Scale
Override
距離拘束の自然長は、Muscleの端点からボーンまでの元々の距離となります。 このスケールは、シミュレーション中の自然長を増減させます。
Relative Rest Length Scale
Multiplier
Rest Length Scale パラメータのデフォルト値、または、前のタブで設定されたAbsolute値の乗数に、この値を乗算します。 例えば、マルチパラメータタブ1でRest Length Scale=0.25、マルチパラメータタブ2でRelative Rest Length Scale=2に設定されている場合、Rest Length Scale値は0.5となります。
Tangent Stiffness
Override
Muscleの端の接続方向が変わらないようにし、ボーンを基準にMuscleの端の関係性を維持します。
Muscle Solver Vellum SOPノードのMuscle Endsパラメータが Constraint to Target Animation に設定されている場合、これは、Muscleの端の事前にアニメーションされた接続方向が変わらないようにします。
Muscle Solver Vellum SOPノードのMuscle Endsパラメータが Constraint to Nearest Bone に設定されている場合、これは、Muscleの端と最近接ボーンとの接続方向が変わらないようにします。
値を高くすると、初期接続角度の維持が試みられ、値を低くすると、初期接続角度の維持を 試みません 。
例えば、Muscleの腱領域には、Muscleの端とボーンとの接続の Tangent Stiffness を非常に高い値にしてください。
Relative Tangent Stiffness
Multiplier
Tangent Stiffness パラメータのデフォルト値、または、前のタブで設定されたAbsolute値の乗数に、この値を乗算します。 例えば、マルチパラメータタブ1でTangent Stiffness=100、マルチパラメータタブ2でRelative Tangent Stiffness=2に設定されている場合、Tangent Stiffness値は200となります。
Radius 1
Muscleの腱で使用する半径コントロールと同様ですが、これは、Muscle Ends拘束とビューポートステートでのそのヒートマップビジュアライゼーションに適用されます。 これらの Radius パラメータ値は、Muscle Ends拘束がMuscleの端点から距離を計算するのに使用されます。 Muscle Ends拘束がMuscleの軸と推測されるものに注目し、その軸に沿った距離を受け取ります。 これは、Muscle Ends拘束がMuscleに対して適用される度合いに影響します。
Radius 2
Muscleのもう一方の端にあるエンドマスクを Radius 1 に調整します。
Muscle to Muscle ¶
この拘束は、Muscleの間に コネクション を作成します。 これらのコネクションは、シミュレーション中に、近くにあるMuscle同士が離れないように保持します。 これらのコネクションに関与するMuscle領域は、 近接度 (Houdini単位)で決まり、 Distance Thresholdパラメータを使用してこの閾値を設定することができます。 他にも、Attachments Candidatesパラメータを使用すれば、これらのコネクションを近くにある特定のMuscleに制限することができます。
コネクションは、MuscleからMuscleの双方向の拘束です。 特定のMuscleのコネクションを削除して、その周囲のすべてから独立させたい場合は、そのMuscleがどこにもコネクションされておらず、さらに、近くにあるMuscleもそのMuscleにコネクションしないようにする必要があります。
Stiffness
Override
Muscle間のコネクションの強度、Muscle間の距離が自然長よりも 長い 時の拘束の強度、Muscleがお互いに 離れて 動く許容量を決めます。
Relative Stiffness
Multiplier
Stiffness パラメータのデフォルト値、または、前のタブで設定されたAbsolute値の乗数に、この値を乗算します。 例えば、マルチパラメータタブ1でStiffness=100、マルチパラメータタブ2でRelative Stiffness=2に設定されている場合、Stiffness値は200となります。
Damping
Override
イテレーションの度に拘束のエネルギーを減らし、コネクションの維持を試みる際に失われるエネルギー量を決めます。 Damping値が高い場合、コネクションが鈍くなります。コネクションを弱めるのではなく、単にコネクションの反応を遅くします。
Relative Damping
Multiplier
Damping パラメータのデフォルト値、または、前のタブで設定されたAbsolute値の乗数に、この値を乗算します。 例えば、マルチパラメータタブ1でDamping=0.25、マルチパラメータタブ2でRelative Damping=2が設定されている場合、Damping値は0.5となります。
Compression Stiffness
Override
Muscle間の距離が自然長よりも 短い 時の拘束の強度、Muscleがお互いの 方へ 動く許容量を決めます。 また、Muscleがまとめて縛られる堅さも決めます。
Relative Compression Stiffness
Multiplier
Compression Stiffness パラメータのデフォルト値、または、前のタブで設定されたAbsolute値の乗数に、この値を乗算します。 例えば、マルチパラメータタブ1でCompression Stiffness=0.25、マルチパラメータタブ2でRelative Compression Stiffness Scale=2に設定されている場合、Compression Stiffness値は0.5となります。
Rest Length Scale
Override
距離拘束の自然長は、Muscle間の元々の距離となります。 このスケールは、シミュレーション中の自然長を増減させます。
Relative Rest Length Scale
Multiplier
Rest Length Scale パラメータのデフォルト値、または、前のタブで設定されたAbsolute値の乗数に、この値を乗算します。 例えば、マルチパラメータタブ1でRest Length Scale=0.25、マルチパラメータタブ2でRelative Rest Length Scale=2に設定されている場合、Rest Length Scale値は0.5となります。
Distance Threshold
Override
近くにあるMuscleのコネクション先の対象の検索範囲を決めます。 この拘束は、この距離内にあるコネクション先を検索し、その閾値内にある他のMuscleの検索を試みます。 近くにMuscleが見つかれば、MuscleがそのMuscleにコネクションします。 その閾値内で他のMuscleが見つからなければ、Muscleはコネクションされないままになります。
Relative Distance Threshold
Multiplier
Distance Treshhold パラメータのデフォルト値、または、前のタブで設定されたAbsolute値の乗数に、この値を乗算します。 例えば、マルチパラメータタブ1でDistance Threshold=0.25、マルチパラメータタブ2でRelative Distance Threshold=2に設定されている場合、Distance Threshold値は0.5となります。
Slide Rate
Override
Muscleの近くのMuscle上での滑りやすさを決めます。 Muscle To Muscleコネクションは、近くのMuscleの表面に沿って移動することができます。 同じMuscleポイントは常に繋がりますが、滑りが発生した場合には、近くのMuscle上の最近接位置が変化する可能性があります。 この拘束プロパティは、Muscleが初期(静止)のMuscle付着位置から離れて移動できる速さを制御します。
Relative Slide Rate
Multiplier
Slide Rate パラメータのデフォルト値、または、前のタブで設定されたAbsolute値の乗数に、この値を乗算します。 例えば、マルチパラメータタブ1でSlide Rate=0.25、マルチパラメータタブ2でRelative Slide Rate=2に設定されている場合、Slide Rate値は0.5となります。
Attachment Candidates
Muscleのコネクション先の候補となるMuscleを、指定したMuscleのリストに制限します。
このフィールドには、@muscle_idで完全にリストされたMuscle、プリミティブ番号の範囲、スペース区切りで個々のプリミティブ番号を指定することができます。
例えば、キャラクタの足のMuscleと腹部のMuscleが近いために、その足のMuscleがその腹部のMuscleにコネクションしている場合、 Attachment Candidates のリストを指定することで、そのような望ましくないコネクションを削除することができます。
Tip
このノードがビューポートステートの時、ホットキーのCを押してからクリックすることで、Attachment Candidatesに含めたいMuscleを選択することができます。
Enterを押して選択を確定します。
Glue Center Distance Threshold
yz-planeからこの距離内にあるポイントのmuscletomuscleglue値が1となります。
これは、体の中心線に沿って対称に位置するMuscle同士を付着させる際に役立ちます。
Glue Candidates
指定したMuscleリストから、そのMuscleが接着できる対象を制限します。
このフィールドには、@muscle_id、プリミティブ番号の範囲、個々のプリミティブ番号をスペース区切りのリストで指定することができます。
Limitation
プリミティブ番号で定義されたMuscleの接着候補をミラーリングすることはできません。
Radius 1
Muscleのエンドマスクに存在する半径コントロールと同様ですが、これはMuscleの接着拘束に適用されます。 Muscleの軸を推定し、その軸に沿った距離を基に各半径の始点を決定します。 これは、Muscleの端がボーンの近くになく、代わりに隣接するMuscleに強固に付着させる必要があるMuscleに役立ちます。
Radius 2
Muscleのもう一方の端にある接着マスクを Radius 1 に調整します。
Muscle to Bone ¶
この拘束は、Muscleを近くのボーン(または、このノードのInput2に接続されているジオメトリ)に付着させます。 これらの付着は、シミュレーション中にMuscleをボーンに維持させ、スケルトンアニメーション中にMuscleをボーンに追従させます。 Muscleからボーンへの付着に関与するMuscleとボーンの領域は、 近接度 (Houdini単位)で決まります。 これによって、Muscleとボーンの距離に基づいてコネクションを切ることができます。 Distance Thresholdパラメータを使用してこの距離閾値を設定することができます。 他にも、Attachments Candidatesパラメータを使用すれば、Muscleからボーンへの付着を特定のボーンに制限することができます。
このノードのビューポートステートでは、キャラクタのボーンに拘束されているMuscleの領域をヒートマップで表示することができます。 ビューポート内のヒートマップビジュアライザは、Muscle to Bone拘束が適用されている 領域 と 強度 を示します。 ヒートマップカラーが明るいほど、その領域内のMuscle to Bone拘束の強度(とStiffness値)が強いです。 Muscle to Bone拘束は、ヒートマップに基づいてその付着の強度を乗算します。
Stiffness
Override
Muscleとボーン間の距離が自然長よりも 長い 時の拘束の強度、Muscleがボーンから 離れて 動く許容量を決めます。 また、Muscleがボーンのアニメーションに追従する厳密さも決めます。
Relative Stiffness
Multiplier
Stiffness パラメータのデフォルト値、または、前のタブで設定されたAbsolute値の乗数に、この値を乗算します。 例えば、マルチパラメータタブ1でStiffness=100、マルチパラメータタブ2でRelative Stiffness=2に設定されている場合、Stiffness値は200となります。
Damping
Override
イテレーションの度に拘束のエネルギーを減らし、付着の維持を試みる際に失われるエネルギー量を決めます。 Damping値が高い場合、付着が鈍くなります。付着を弱めるのではなく、単に付着の反応を遅くします。 例えば、粘りのような付着になり、Muscleがボーンに直接追従するというよりもボーンの方へ泳いで行く感じになります。 Damping値を低くすると、Muscleに振動や微震が起こります。
Relative Damping
Multiplier
Damping パラメータのデフォルト値、または、前のタブで設定されたAbsolute値の乗数に、この値を乗算します。 例えば、マルチパラメータタブ1でDamping=0.25、マルチパラメータタブ2でRelative Damping=2が設定されている場合、Damping値は0.5となります。
Mask Falloff
Override
ペイントしたマスクがMuscleに適用される時にそこに非線形のフォールオフを適用し、 ビューポート内でのMuscleのビジュアライゼーションのヒートマップのフォールオフの表示のグラデーション具合を決めます。 ヒートマップカラーが明るいほど、その拘束がMuscleに対して影響力が強いです。 ヒートマップカラーが暗いほど、その拘束がMuscleに対して影響力が弱いです。
Relative Mask Falloff
Multiplier
Mask Falloff パラメータのデフォルト値、または、前のタブで設定されたAbsolute値の乗数に、この値を乗算します。 例えば、マルチパラメータタブ1でMask Falloff=0.25、マルチパラメータタブ2でRelative Mask Falloff=2が設定されている場合、Mask Falloff値は0.5となります。
Distance Threshold
Override
ボーンとコネクションを形成できるMuscleからの距離範囲を指定し、拘束コネクションを増やすべきか減らすべきか決めます。 この値が小さいほど、コネクションが形成されるMuscleとボーン間の距離が短くなります。 これらのコネクションの強度は、 Mask Falloff ヒートマップ値に依存します。
Relative Distance Threshold
Multiplier
Distance Treshhold パラメータのデフォルト値、または、前のタブで設定されたAbsolute値の乗数に、この値を乗算します。 例えば、マルチパラメータタブ1でDistance Threshold=0.25、マルチパラメータタブ2でRelative Distance Threshold=2に設定されている場合、Distance Threshold値は0.5となります。
Compression Stiffness
Override
ボーンがMuscleにどれだけ近づきやすいかを指定し、拘束が縮小できる度合いを決めます。 Muscleのシミュレーション中、当然ながらボーンはMuscleに近づきます。 Compression Stiffness が強い時、ボーンはMuscleに近づきにくくなり、(ラインで示された)コネクションがより 堅く なってMuscleとボーン間の距離が維持されます。 Compression Stiffness が弱い時、ボーンがMuscleに近くなります。 このパラメータは、Muscleとボーン間で特定の距離を維持するのに役立ちます。
Relative Compression Stiffness
Multiplier
Compression Stiffness パラメータのデフォルト値、または、前のタブで設定されたAbsolute値の乗数に、この値を乗算します。 例えば、マルチパラメータタブ1でCompression Stiffness=0.25、マルチパラメータタブ2でRelative Compression Stiffness Scale=2に設定されている場合、Compression Stiffness値は0.5となります。
Rest Length Scale
Override
距離拘束の自然長は、Muscleからボーンまでの元々の距離となります。 このスケールは、シミュレーション中の自然長を増減させます。
Relative Rest Length Scale
Multiplier
Rest Length Scale パラメータのデフォルト値、または、前のタブで設定されたAbsolute値の乗数に、この値を乗算します。 例えば、マルチパラメータタブ1でRest Length Scale=0.25、マルチパラメータタブ2でRelative Rest Length Scale=2に設定されている場合、Rest Length Scale値は0.5となります。
Slide Rate
Override
Muscleのボーン表面上での滑りやすさを決めます。 Muscle To Boneコネクションは、ボーン表面に沿って移動することができます。 同じMuscleポイントは常に繋がりますが、滑りが発生した場合には、ボーン上のポイントが変化する可能性があります。 この拘束プロパティは、Muscleが初期(静止)のボーンコネクションポイントから離れて移動できる速さを制御します。
Relative Slide Rate
Multiplier
Slide Rate パラメータのデフォルト値、または、前のタブで設定されたAbsolute値の乗数に、この値を乗算します。 例えば、マルチパラメータタブ1でSlide Rate=0.25、マルチパラメータタブ2でRelative Slide Rate=2に設定されている場合、Slide Rate値は0.5となります。
Tangent Stiffness
Override
Muscleとボーン間の初期接続方向が変わらないようにし、そのMuscleがそのボーンを基準に関係性を維持します。 値が高いほど、その初期接続の角度の維持を試み、値が低いほど、その初期接続の角度の維持を 試みません 。 例えば、Muscleの腱領域だと、Muscle to Boneコネクションの Tangent Stiffness はもっと高い値にしてください。
Relative Tangent Stiffness
Multiplier
Tangent Stiffness パラメータのデフォルト値、または、前のタブで設定されたAbsolute値の乗数に、この値を乗算します。 例えば、マルチパラメータタブ1でTangent Stiffness=100、マルチパラメータタブ2でRelative Tangent Stiffness=2に設定されている場合、Tangent Stiffness値は200となります。
Velocity Stiffness Factor
Override
この乗数は、付着先のボーンのVelocityを使用してMuscle to Bone拘束を強くします。 付着先のボーン位置で計算されたVelocityの大きさにこの係数が乗算されて、それがMuscle to Bone Stiffnessに加算されます。
Relative Velocity Stiffness
Multiplier
Velocity Stiffness パラメータのデフォルト値、または、前のタブで設定されたAbsolute値の乗数に、この値を乗算します。 例えば、マルチパラメータタブ1でVelocity Stiffness=100、マルチパラメータタブ2でRelative Velocity Stiffness=2に設定されている場合、Velocity Stiffness値は200となります。
Attachment Candidates
Override
Muscleの接続先として許可されるボーンを制限します。 このフィールドには、有効なプリミティブグループまたはAdhoc(一時的な)グループ文字列を指定することができます。 例えば、キャラクタの上腕二頭筋が意図せずに肋骨ボーンに繋がっている場合、 Attachment Candidates のリストを指定することで、その繋がりを腕ボーンや肩ボーンに限定させることができます。 簡単にビューポート選択できるように必ずBone IDアトリビュートを指定してください。
Attachment Candidates を使用する際に、オプションのPrimitiveアトリビュートの muscletoboneattachid がソースMuscleとターゲットボーンの両方に存在していた場合、
その muscletoboneattachid の整数値が一致すれば、Muscle to Boneアタッチメントは、マッチしたプリミティブに制限されます。
muscletoboneattachid アトリビュートがPointアトリビュートとして存在していれば、そのPointアトリビュートは、拘束が生成されるとすぐにPrimitiveアトリビュートにプロモートされます。
これによって、
Attribute Paint SOPなどのツールを使用して、マッチングインデックスをペイントすることができます。
muscletoboneattachid アトリビュートは必ず整数値でなければなりません。
そのアトリビュートが存在し、何もマッチしなかった場合は、拘束は生成されません。
Tip
このノードがビューポートステートの時、you can press the ホットキーのBを押してからクリックすることで、Muscle to BoneのAttachment Candidatesに含めたいボーンを選択することができます。
を1クリックすることで個々のプリミティブが選択され、
をダブルクリックすることでボーン全体(プリミティブの繋がっている範囲)を選択することができます。
Enterを押して選択を確定します。
制限事項
プリミティブ番号で定義されたMuscle to BoneのAttachment Candidatesは、ミラー化することができません。
代わりに(L_spineboneのように)接頭辞が付いた名前のプリミティブグループを使用するか、または、別にコネクションを作成しミラー化を行ない、必要なコネクションを追加してから、そのミラーの後にもう1個 Muscle Constraint Properties Vellum SOP を追加して、ミラーされたジオメトリの拘束パラメータ値を定義します。
Collisions ¶
以下のパラメータは、Muscleの四面体メッシュのポイントの 衝突半径 を変更します。
Notes
-
Muscle Solverの衝突検出/衝突調整の負荷がかからないように、できるだけ衝突半径を小さくしようとしてください。
-
使用されるもののこのノードのUIの一部ではない拘束タイプとして、 Muscle Glue 拘束があります。この拘束はMuscles & Tissueネットワークの下流に配置されている
Muscle Paint SOPノードに存在します。
Collision Scale
Override
拘束ではありませんが、このパラメータは、Muscle四面体メッシュに対して衝突検出が行なわれる各Muscleポイントからの境界距離を設定します。 このノードの Visualize > Collision Radius設定によって、ビューポートステートでMuscleの衝突境界を確認することができます。
衝突を計算する時、このノードは、大元のVellum拘束のEdge Length Scaleを使用して、外部コライダーが衝突判定において Collision Scale 境界内に入っているかどうかを判断します。 例えば、1の値は、Muscleポイント周囲にエッジの半径と同等の(フォースフィールドのような)衝突境界を作成します。
Relative Collision Scale
Multiplier
Collision Scale パラメータのデフォルト値、または、前のタブで設定されたAbsolute値の乗数に、この値を乗算します。 例えば、マルチパラメータタブ1でCollision Scale=0.25、マルチパラメータタブ2でRelative Collision Scale=2に設定されている場合、Collision Scale値は0.5となります。
Velocity Blend ¶
この拘束は、周辺のVelocityがMuscleに伝わる度合いを制御します。
Note
Muscles & Tissueネットワークの下流に配置されている
Muscle Solver Vellum SOPノードには、Velocity Blendingを適用するための追加パラメータがあります。
Velocity Blend
Override
Muscleがボーンから継承するVelocity量を指定します。 Muscleシミュレーション中に、キャラクタのアニメーションボーンは、移動する時にこの指定された特定のVelocity量を持ちます。 そして、Muscle to Bone付着拘束はMuscleをボーンにコネクションしているので、そのボーンのVelocityの特定の量がそのMuscleに伝わり、そのMuscleが動けるようになります。 Velocity Blend が多いほど、Muscle to Bone拘束はアニメーション中にMuscleとボーンの維持を試みます。 これは、高速に移動するキャラクタのボーンにMuscleのコネクションを維持させるのに役立ちます。
例えば、Muscleが高速に移動するボーンに拘束されていて、 Velocity Blend がオンだった場合、Muscleとボーン間で拘束がバネのようなコネクションの維持を試みるだけでなく、Muscleもボーンの運動量を継承して、その力の影響を受けるようになります。
Relative Velocity Blend
Multiplier
Velocity Blend パラメータのデフォルト値、または、前のタブで設定されたAbsolute値の乗数に、この値を乗算します。 例えば、マルチパラメータタブ1でVelocity Blend=0.25、マルチパラメータタブ2でRelative Velocity Blend=2に設定されている場合、Velocity Blend値は0.5となります。
Bone Geometry ¶
以下のパラメータは、キャラクタのスケルトンに対してボーンのTポーズ(restトランスフォーム)と初期フレームを定義します。 これは、このノードの拘束を計算する際に使用される特定のボーンの向きを決めます。
Note
このノードのInput 2を 使用しない 場合、Muscles & Tissueネットワークの上流のtposeアトリビュート値を使用することができます。
T-Pose
ボーンのTポーズの取得先を指定します。
Use Initialization Frame
最初のフレームのトランスフォームからボーンのTポーズを取得します。
From Attribute
T-Pose Attribute パラメータで定義されたアトリビュートからボーンのTポーズを取得します。
Initialization Frame
ボーンのTポーズの取得先のアニメーションフレームの番号を指定します。
T-Pose Attribute
ボーンのTポーズの取得先のアトリビュートの名前を指定します。
Bone ID Attribute
現行 Bone Geometry マルチパラメータの設定をどのボーン(s)に割り当てるのかを決めます。
これは、Muscleを選択するためのmuscle_idと同様です。
-
ビューポートステートでBを押して、追加したいボーン(s)を選択してから、Enterを押します。
入力 ¶
Input 1
プロパティを含んだソリッドMuscle(四面体)メッシュ。
Input 2
ボーンジオメトリまたは他の入力ジオメトリ。
出力 ¶
Output 1
Muscle Vellum拘束を形成するためのプロパティを含んだソリッドMuscle(四面体)メッシュ。
| See also |