On this page | |
Since | 19.0 |
このノードは、入力のソリッドMuscleジオメトリ上にmuscletension
Pointアトリビュートをセットアップしてアニメーションさせて、シミュレーション中の筋肉の屈曲アクションを駆動させます。
このmuscletension
Pointアトリビュートは、Muscle Solverで使用され、入力の四面体メッシュに異方性スケールを適用したり、 押しつぶし ます。
この異方性スケールは、 Fiber Groom SOPノードで生成されるmaterialW
Pointベクトルアトリビュートで定義された 筋繊維方向 に沿って適用されます。
筋肉を押しつぶす時のその筋肉の屈曲の 度合い またはその収縮の強さは、 Muscles Properties SOPノードのFiber Strengthパラメータで設定されたfiberstiffness
Pointアトリビュートで決まります。
muscletension
Pointアトリビュートは、fiberstiffness
Pointアトリビュートの乗数のように機能します。
筋肉が収縮すると、体積維持の力も作用して、筋肉の腱以外の領域が 膨らみます 。
この 体積スケールフォース は、 Muscles Properties SOPノードのFiber Volume Scaleパラメータで設定されたfibervolumescale
Pointアトリビュートで生成されます。
このノードを使用することで、主な3つのMuscleセットアップのタスクを行なうことができます:
-
Muscleジオメトリ(
muscle_id
Primitiveアトリビュート)をMuscle Tension Lines(autoflex_id
Primitiveアトリビュート)にリンクして、自動屈曲タイミングを駆動します。 -
Muscleが完全に屈曲した状態(
muscletension
Pointアトリビュート)と見なされるMuscle Tension Lineの 長さ (restlength
とlength
のPrimitiveアトリビュート)のアクティベーション率を調整します。これは、屈曲していると見なすか見なさないかの 閾値 を設定します。 -
ショットアニメーション中に筋肉が収縮と弛緩を試みる タイミング を決める際にMuscle Solverで使用される
muscletension
Pointアトリビュートをアニメーションさせます。この収縮/弛緩は、Muscle Tension Lines単独またはMuscle Flex系パラメータのキーフレームと組み合わせることで、 自動的に 駆動させることができます。ソルバには、Muscleをアクティブにするタイミングとそれらのパラメータ値に打ったキーフレームの大きさを伝えることができます。
How to
To... | Do this |
---|---|
必要な入力を Muscle Flex SOP に接続する。 |
Warning Muscle Flex SOP ノードの 3番目の入力 Muscle Tension Linesを接続しなかった場合、Muscleの |
Muscle Flex SOP でパラメータを構築する。 |
|
MuscleをMuscle Tension Lineにリンクする |
|
Muscle Flexアクティベーション閾値を調整する |
|
筋収縮の調整と筋張力のアニメーション |
重要事項 Muscle Solver Vellum SOPノードからMuscleシミュレーションを再生することで、キーフレームからの変形結果のみを表示することができます。 |
ステート ¶
ビューポート内での Muscle Flex SOP ステートは、本質的に 選択 ステートです。 1個以上のMuscleを選択してからEnterを押すと、それらのMuscleが現行選択になります。 プレイバーのタイムラインを任意のフレームまでスクラブさせてから、現行選択に対してアクションを実行します。
ホットキーまたは操作 |
アクション |
---|---|
1を押す |
現在選択されているMuscle(s)の |
0を押す |
現在選択されているMuscle(s)の |
スクロール |
現在選択されているMuscle(s)の |
Kを押す |
現在の時間で選択したMuscle(s)の |
Set Keyframe
現在選択されているMuscleの Muscle ID パラメータ(Flexコントロール)にキーを設定します。 Kホットキーでも可能。
Set Flex to 0
現在選択されているMuscleの Muscle ID パラメータ値を0に設定します。 0ホットキーでも可能。
Set Flex to 1.0
現在選択されているMuscleの Muscle ID パラメータ値を1.0に設定します。 1ホットキーでも可能。
Assign Links with Symmetry
有効にすると、Activation Linksパラメータを使用してMuscle Tension LineをMuscleに割り当てて、そのMuscleが対称モデルの一部だった場合、そのモデルの反対側の呼応するMuscleが正しいMuscle Tension Lineに自動的にリンクされます。
Link Selected Muscles to Muscle Tension Line
現在選択されているMuscleを現在選択されているMuscle Tension Lineにリンクします。 Lホットキーでも可能。
Unlink Selected Muscles from Muscle Tension Line
現在選択されているMuscleと現在選択されているMuscle Tension Lineをリンク解除します。
ビジュアライゼーション |
ビューポートステート |
---|---|
Muscle選択 |
ビューポートステートでは、Muscleを直接選択することができます。 これは、ホットキーを使用してビューポートステートで筋肉の屈曲をアニメーションさせる時に役立ちます。 |
Muscleアクティベーション |
Display > Muscle Tension Visualizer パラメータを使うと、キャラクタのショットアニメーションを再生しながら筋肉とその筋張力レベルの有効性を確認することができます。アニメーション中に筋肉の色が変化して Muscle Tension Linesとその計算から時間の経過と共に値が自動的に変化しますが、Muscle Flexタブのパラメータを使用することで、手動でその値を変更してキーフレームを打つことができます。 |
アトリビュート ¶
|
point |
時間の経過と共に可変するMuscle Flex値をPointトランスフォームとして格納します。 |
パラメータ ¶
Attribute
すべてのMuscle Flex設定が格納されるアトリビュートの名前を指定します。
Muscle Flex ¶
このタブには、 Muscle Flex パラメータがリストされます。
このタブ上のパラメータは、入力のMuscleジオメトリ上のmuscle_id
アトリビュートを検出することで自動的に生成されます。
Muscle Flex SOPノードの 1番目の入力 で見つかったmuscle_id
毎にfloatパラメータが生成されます。
これらのパラメータ名は、簡単に識別できるようにmuscle_id
の名前と同じになっています。
ビューポートでは、筋肉の色が変化して、筋張力または 筋肉の屈曲 の度合いを示します。 Muscle Flex パラメータ値に キーフレーム を打つことで、アクティブにする/しないのタイミングをMuscleに伝えることができます。
Muscleをシミュレーションに取り込む時、その筋収縮はmuscletension
( Muscle Flex 系パラメータ)と四面体に適用されている繊維スケールフォース( Muscles Properties SOPノードのfiberstiffness
アトリビュート)の組み合わせで駆動されます。
Muscleは、筋繊維方向(Fiber Groom SOPノードのmaterialW
Pointベクトルアトリビュート)にスケールします。
Muscle Flexアニメーションは、以下の3つの方法のどれかで制御することができます:
-
Activation Linksを使用して、Muscle Tension Lineを Muscle Flex パラメータに割り当てる方法。
-
このタブ内のそれぞれの Muscle Flex パラメータに直接キーフレームを打つ方法。
-
1と2を組み合わせて使用する方法。
Muscle & TissueセットアップでMuscle Tension Linesを使用した場合、ショットアニメーション全体で( Muscle Flex パラメータを介して)Muscle毎にmuscletension
にキーフレームを打つ必要はありません。Muscle Tension Linesが自動的にmuscletension
値を変更してくれます。
Muscle Tension Linesが自動的に筋収縮の多くを自動化してくれるものの、必要に応じて Muscle Flex パラメータにいくつかキーフレームを追加することで、Muscle Tension Linesが生成するプログラム的なmuscletension
値を調整することができます。
Muscleのmuscletension
をキーフレーム値とそれを駆動させるMuscle Tension Lineの両方で制御した場合、強い値の方が採用されます。
例えば、Muscle Tension Lineから検出されたmuscletension
が0.5で、キーフレームを打った Muscle Flex 値が0.75の場合、キーフレームの値が採用されます。
常に大きい方の値が取得されます。
このノードは、アニメーションとパラメータ設定を維持できるように、入力のMuscleジオメトリ(1番目の入力)で見つかったmuscle_id
名をキャッシュ化します。
以下のボタンは、ジオメトリ系ノードが既に Muscle Flex SOP ノードに接続された 後 にMuscleを追加または削除するイベントで、このキャッシュを更新/リセットすることができます。
Detect New
入力Muscleジオメトリ上で見つかった新しいmuscle_id
を追加し、それらをパラメータリストに追加します。
Remove Unused
このタブにリストされている Muscle Flex パラメータに該当するmuslce_id
が入力Muscleジオメトリ上に存在しなかった場合、その Muscle Flex パラメータを削除します。
Reset All
現在のすべての Muscle Flex パラメータと Activation Links パラメータをデフォルト値にリセットし、内部キャッシュリストを再構築します。
Warning
Reset All のクリックでも、既存の Muscle Flex チャンネルアニメーションが削除されます。
Muscle Flex パラメータをリストします。
これらのパラメータ名は入力Muscleジオメトリ(1番目の入力)に応じて順応します。
ここにリストされた各パラメータは、それと同じ名前の入力muscle_id
から派生します。
Muscle Flex 値が0なら筋肉は緩和ソフトボディとしてシミュレーションされるのに対して、1.0の値は筋張力を最大限にし筋肉の収縮と硬化を引き起こします。
Muscle Tension Lines ¶
このタブには、 Activation Ratio パラメータがリストされ、 Muscle Tension Lines SOPノードがこのノードの 3番目の入力 (Input 3)に接続されている場合にのみ有効化されます。
Muscle Tension Lineが1個以上のMuscleにリンクされている時、その長さの変化を使用してMuscle上のmuscletension
アトリビュートが駆動されます。
それと同時に、キーフレームを打ったmuscletension
をMuscle Tension Lineとして使用することができます。
2つのmuscletension
のうち大きい方の値が最終的にmuscletension
アトリビュートに適用されます。
Muscle Tension Lines タブ > Activation Ratio セクションのパラメータでは、Muscle Tension Line毎にMuscleアクティベーション閾値を設定することができます。
この比率になる長さの変化が完全に緊張したMuscleにマッピングされます。
例えば、L_Bicepパラメータの値が0.75で、そのL_BicepがL_Bicep Muscle Tension Lineにリンクされている場合、そのL_Bicep Muscle Tension Lineの長さがrest_length
の75%に到達すると、L_Bicep Muscleのmuscletension
は1.0になります。
このパラメータの値を2.0に設定した場合、Muscle Tension Lineがrest_length
の200%に到達すると、L_Bicep Muscleのmuscletension
も1.0になります。
Evaluate at Frame
Muscle Flexがアクティブになるショットアニメーション内のフレーム番号を指定します。
このノードは、入力のMuscle Tension Line(3番目の入力)からautoflex_id
Primitiveアトリビュートを検出してキャッシュ化します。
以下のボタンは、Muscle Tension Lines SOPノードが既に Muscle Flex SOP ノードに接続された 後 にMuscle Tension Lineを追加または削除するイベントで、このキャッシュを更新/リセットすることができます。
Detect New
入力の Muscle Tension Lines SOP ノード上で見つかった新しいautoflex_id
を追加し、それらをパラメータリストに追加します。
Remove Unused
このタブにリストされている Activation Ratio パラメータに該当するautoflex_id
が入力の Muscle Tension Lines SOP ノード上に 存在しなかった 場合、その Activation Ratio パラメータを削除します。
Reset All
現在のすべての Activation Ratio パラメータをデフォルト値にリセットし、内部キャッシュリストを再構築します。
このセクションのパラメータは、 Muscle Tension Lines SOPノード上のautoflex_id
アトリビュートを検出することで自動的に生成されます。
Muscle Flex SOPノードの 3番目の入力 (Input 3)で見つかったautoflex_id
毎にfloatパラメータが生成されます。
これらのパラメータ名は、簡単に識別できるようにautoflex_id
の名前と同じになっています。
Activation Ratio パラメータ値は、最大収縮が起きる長さ比率を示します。
この比率は、該当するMuscle Tension(筋緊張)ラインの自然長に対する比率(length
/restlength
)です。
例えば、1.5の値は、元々の自然長の1.5倍の長さになった時に筋肉が収縮します。
Activation Links ¶
このタブでは、(muscle_id
別に)個々のMuscleをMuscle Tension Line(autoflex_id
)にリンクしてショットアニメーション全体でmuscletension
値の変動を駆動させることができるパラメータがリストされます。
Muscle Tension Lines SOPノードを Muscle Flex SOP ノードの 3番目の入力 (Input 3)に接続してから Muscle Flex タブ内の Detect New をクリックすることで、このリストのパラメータを生成することができます。
Muscleが完全に屈曲した状態(muscletension
Pointアトリビュート)と見なされるMuscle Tension Lineの 長さ (restlength
とlength
のPrimitiveアトリビュート)のアクティベーション率を調整することができます。
これは、屈曲していると見なすか見なさないかの 閾値 を設定します。
Deform ¶
これらのパラメータは、単にその場でmuscletension
アニメーションを確認できるように入力のアニメーションソース(通常では、アニメーションボーンジオメトリ)を使用して ポイント変形 を入力のMuscleに適用します。
Muscle Solverは静的なTポーズ位置しか考慮しないので、この変形アニメーションは、あくまで参考用です。
Output Integrity
Point DeformやDelta Mushは、なにかしら非常に品質の悪い四面体や反転した四面体を生成してしまう可能性があります。 Output Integrity パラメータオプションは、そのような低品質な変形結果を解消するのに役立ちます。
Simple Deformation
Muscle四面体メッシュの内側にある不正な四面体の修正を試みません。
Compute Quasistatic Corrections
内部で準静的なシミュレーションを実行して、Muscle四面体メッシュの内側にある不正な四面体を修正します。
ほとんどのMuscleシミュレーションでは、このオプションは、結局のところMuscle Solverで 使用されない モーションに対して余計に計算時間を増やすため、不要です。 しかし、 Muscle Flxe SOP の出力に高品質な変形が必要な場合では、余計に整合性を合わせるメリットがある場合があります。
Deformation Style
Muscle変形の実行方法を決めます。
Point Deform
変形ラティス(ポイントクラウド)を使用して、そのラティスの各ポイントがMuscle四面体メッシュの隣接ポイントを キャプチャ して影響を与える領域でMuscle変形を駆動させます。 そのポイントが近いほど、影響が大きいです(Elendtメタボール方程式から計算されます)。
Use BoneCapture Weights
Muscleジオメトリのスキンウェイト(boneCapture
Pointアトリビュート)と KineFX Rig Path パラメータで指定されたスケルトンを使用して、Muscle変形を駆動させます。
KineFX Rig Path
Muscle変形を駆動させたいKineFXスケルトンのパスを指定します。
このパラメータは、 Deformation Style が Use BoneCapture Weights に設定されている場合にのみ利用可能です。
Deform タブ > Point Deformセクション内のパラメータを使用することで、ポイント変形パラメータを調整することができます。 Muscle Solverの用途では、Muscle End領域として指定されたMuscle上の領域のみが重要です。 これらの領域がターゲットの拘束領域として作用します。
このノードでは、Muscleの動きをプロキシアニメーションを使って“その場で”確認できるようにするために、MuscleがPoint Deform SOPによって変形されます。 そうしないと、このノードのアニメーション出力は、ソルバで無視されます。 ただし、この考えには例外が1つあります。 Muscle Solver Vellum SOPのMuscle Ends拘束には、Muscleをアニメーションソースに取り付けるモードが2つあります。 Muscleを一番近くにあるボーンジオメトリに取り付けたり(Muscle Constraint Properties SOP > Muscle to Boneタブを参照)、アニメーションポジションをターゲットとして扱うことでMuscleの両端を“Pin To Animation”拘束のように動作させることができます。 後者の場合では、このノードから出力されるプロキシアニメーションをアニメーションソースとして使用することができます。
Radius
ポイント影響力の最大検索半径。 Point Deformを参照してください。
Minimum Points
ポイント影響力の検索するポイントの最小数。 Point Deformを参照してください。
Maximum Points
ポイント影響力の検索するポイントの最大数。 Point Deformを参照してください。
Rigid Projection
有効にすると、計算されたローカルトランスフォームに含まれているシアーを取り除き、リジッドトランスフォームのみを残します。 Point Deformを参照してください。
Recompute Affected Normals
有効にすると、変形ポイントと未変形ポイントの両方を含んだ四面体から影響を受ける法線が自動的に再計算されます。 Point Deformを参照してください。
Enable Delta Mush
有効にすると、このノードは、ポイント変形を適用する時にMuscleの形状の維持を試みます。 Delta Mushを参照してください。
Delta Mush Iterations
Muscleに適用する平滑化の反復回数を指定します。 この反復回数が多いほど、滑らかな結果が得られます。
このパラメータは、 Enable Delta Mush が有効な場合にのみ利用可能です。 Delta Mushを参照してください。
T-Pose Source
ポイント変形に使用されるRestポーズの派生元を指定します。
Use Initialization Frame
アニメーションソースの時間を Initialization Frame までずらして、そのフレームでフリーズされたジオメトリをキャプチャポジションのRestポーズとして使用します。
From Attribute
T-Pose Attribute をキャプチャポジションのRestポーズとして使用します。
Initialization Frame
アニメーションソースジオメトリを維持またはフリーズしてからそれをRestポーズとして使用するフレーム(時間)を指定します。
このパラメータは、 T-Pose が Use Initialization Frame に設定されている場合にのみ利用可能です。
T-Pose Attribute
キャプチャポジションのRestポーズが指定された(このノードの2番目の入力の)Pointアトリビュートの名前。
このパラメータは、 T-Pose が From Attribute に設定されている場合にのみ利用可能です。
Display ¶
以下のパラメータは、このノードのビューポートステートでMuscle Flex変形をどのように表示するのかを決めます。
Muscle Tension Visualizer
有効にすると、Muscle Flexパラメータによってアニメーションされるmuscletension
アトリビュートにカラービジュアライザが適用されます。
灰色は、筋張力が弱く、赤色は筋張力が強いことを示します。
Bone Geometry
有効にすると、ビューポートステートでアニメーションソースジオメトリ(このノードの2番目の入力)が表示されます。 これは、ほとんどの場合がアニメーションボーンジオメトリです。
Bone Color
ビューポートステートでの Bone Geometry のRGBカラーを設定します。
Muscle Tension Lines
有効にすると、ビューポートステートでMuscle Tension Lines(このノードの3番目の入力)が表示されます。
入力 ¶
Input 1
ソリッドMuscleジオメトリ。
Input 2
アニメーションソースジオメトリ(たいていの場合はアニメーションボーンジオメトリ)とプリロール。
Input 3
Muscle Tension Lines(autoflex_id
、length
、restlength
)。
出力 ¶
Output 1
アニメーションするmuscletension
が含まれたソリッドMuscleジオメトリ。
See also |