On this page |
Vellum Constraints SOPは、入力ジオメトリからVellum Solverに適した拘束を作成します。
布、ヘアー、ソフトボディなどのすべてのVellumマテリアルタイプは、一連のポイント間の明示的な拘束で表現されています。 Vellumの設定は2つのジオメトリで構成されています。 表示ジオメトリと衝突ジオメトリが1番目の入力であり、且つ1番目の出力です。 拘束ジオメトリが2番目の入力であり、且つ、2番目の出力です。 この2つのジオメトリは、一対一でポイントが呼応している必要があり、ほとんどのVellumノードでペアとして頻繁に処理されます。
Vellum Constraintsは、ほとんどの拘束が共通パラメータセットで定義されているので、ほぼすべての拘束タイプを生成することができます。 しかし、セットアップを簡単にするために、よく使用する拘束タイプを設定できるように、たくさんのTabメニューマクロが用意されています。
パラメータ
Constraint Type
生成する拘束のタイプ。これは、他のパラメータのほとんどの可視性に影響します。 通常では、このタイプは適切なTabメニューマクロを使って設定します。
None
拘束を生成しません。
Distance Along Edges
表示ジオメトリ内の各エッジが、そのエッジ長を維持するDistance拘束に変換されます。
Bend Across Triangles
三角形の各ペア(入力が四角形以上であれば、暗黙的な三角形)が、その2つの三角形間の初期の二面角を維持する拘束を生成します。
Cloth
Cloth拘束は、 Distance Along Edges 拘束と Bend Across Triangles 拘束の両方で構成します。
Hair
Hair拘束は、エッジ上の距離とエッジ間の屈曲で構成します。 この屈曲には、エッジの捻じれも含まれるので、Torsion(ねじり力)効果を出すことができます。
String
String拘束は、処理の軽いヘアー拘束です。 この拘束は、エッジ上の距離とエッジ間の角度を維持します。 しかし、捻じれ拘束がないので、エッジが自由にスピンしてしまいます。
Pin to Target
指定したポイントが、ターゲットジオメトリ内の呼応するポイントにピン留めされます。 Vellum Solverのターゲットジオメトリは、通常では1番目の入力なので、そのアニメーションに一致しますが、これを上書きすることができます。
Attach to Geometry
指定したポイントが3番目の入力のジオメトリに取り付けられます。 これらのポイントには、 Attach Frame での最近接ポイント番号が格納され、それらを結び付けるDistance拘束を作成します。
Stitch Points
Distance拘束を使って同じジオメトリ内のポイントを縫合します。 これらのポイントは、実際には幾何学的に繋がっている必要はありません。 これは、ジャケットを閉じた状態に維持したり、ポケットがひらひらしないようにするのに役立ちます。
Pressure
Define Pieces パラメータによって決定された各ピースに元々の体積を記録し、その体積を維持する(多くのポイントで定義された)拘束を構築します。 この拘束は全体的に適用されるので、風船のように1箇所を圧搾すると他の箇所が膨張します。
Tetrahedral Volume
各四面体を、その四面体の体積を維持する拘束に変換します。 これは、シアー(傾斜)またはストレッチ(伸縮)の拘束を含んでいないことに注意してください。 つまり、適切なソフトボディを作成するには、さらにDistance拘束を追加する必要があります。
Weld Points
これ自体は拘束ではありませんが、weld
アトリビュートを編集して、計算用にポイントを論理的に単一ポイントに結合します。
しかし、それらのポイントは独立したポイントの状態のままです。
さらに、これは、論理的に結合されたエッジの箇所にBend拘束を構築して、その結果を一枚の平坦なピースのように作用させることができます。
Vellum Post Process SOPは、シミュレーション後のそれらのWeld頂点を、レンダリングでジオメトリが繋がっているように見えるように繋ぎ直すことができます。
Glue
各ポイントが、自身のピースのメンバーでない隣接ポイントを検索します。 これは、各ポイントをその隣接に維持させるDistance拘束を構築します。 これは、プロキシミティ(近接度)で自動的にポイント間を接着させるシステムを構築する時、特に分離を結合させる時に役立ちます。
Struts
各ポイントが、自身のピースのメンバーで真っ直ぐな見通し線の方向にある反対側のポイントを検索します。 Struts(支柱)は、各ポイントとそのポイントの間にDistance拘束を構築します。 これは、完全にFEMによる解法を使わずに、オブジェクトの剛性と体積を表現した内部支柱のような、たくさんの楊枝を構築します。
Geometry
Group Type
拘束のソースポイントに使用するタイプを制御します。
Group
拘束のソースポイントのグループ。 ここには、拘束に変換されるポイントまたはプリミティブを指定します。このグループが拘束の前半として使用されます。
Triangulation
通常ではDistance拘束とBend拘束は三角形メッシュに対して構築します。 入力を強引に三角形化しなくても、暗黙的に三角形化することができます。
None
暗黙的に入力を三角形化しません。
Regular
一貫して三角形に分割します。
Alternating
三角形の分割を逆にするように試みるので、一連の四角形が規則的な構造にならなくなります。
Mass
ポイントのmass
値。
このmass
は、POPフォースによるポイントの挙動と拘束の強度に影響します。
Thickness
pscale
に記録されるポイントの厚み。これは、三角形の厚みとカーブの厚みにも使用されます。
Define Pieces
Pressure拘束は、オブジェクトをばらばらのピースに分割して、その体積を計算して定義します。 Glue拘束とStrut拘束にも別々のピースを定義する方法が必要です。
From Attribute
このアトリビュートの固有な値が各ピースの定義に使用されます。
From Connectivity
入力ジオメトリの接続性が各ピースの定義に使用されます。
Piece Attrib
ピースの定義に使用するアトリビュート。 ここには、PointアトリビュートまたはPrimitiveアトリビュートを指定することができます。
Layer
この番号がlayer
アトリビュートの値としてポイントに設定され、布シミュレーションでLayer Shockのスタック(積み上げ)順序を定義するのに役立ちます。
Compute Missing Orientation
ヘアージオメトリを入力として変形させる場合、時間軸で安定した回転基準を示したorient
アトリビュートがVellum Solverで必要になります。
このアトリビュートは、静止状態のスキンとアニメーションさせたスキンを使用したGuide Deform SOPによって作成することができます。
このパラメータが有効な時にorient
が見つからなかった場合、Vellum Constraintsは、指定した Rest Orientation Frame を基準に各ヘアーのトランスフォームからそれを計算します。
Rest Orientation Frame
Compute Missing Orientation が有効な場合、そのヘアーの向きを計算する時に使用する参照フレーム。 通常では、これをシミュレーションの開始フレームに設定します。
Show Guide Geometry
新しく生成された拘束をガイドジオメトリとして表示します。 このガイドは、期待した順番でポイントが接続されていることを確認するのに役立ちます。 しかし、拘束をたくさん作成した時、特にビューポート内で下流ノードのVellumジオメトリを選択しようとした時に、そのガイド表示は非常に複雑になってしまいます。 このパラメータは、必要に応じて、そのガイドジオメトリを非表示にすることができます。
Target Geometry
Target Group Type
拘束ターゲットグループのタイプ。
Target Group
ターゲットグループ。このグループには、 Attach to Geometry 拘束や Stitch 拘束の後半を指定します。
Target Path
Attach to Geometry拘束では、計算時に現行アニメーションデータが3番目の入力のSOPから読み込まれます。 ここにパスを指定するとそれが上書きされるので、キャプチャ時ではなく計算時に別のアニメーションが必要になった場合に役立ちます。
Attach Frame
3番目の入力のどのフレームをジオメトリの取り付けに使用するのかを制御します。
Drag
Normal Drag
dragnormal
アトリビュートを作成して、この値を設定します。
これは、風のフォースを適用した時に、サーフェスの法線方向またはカーブの法線方向にポイントの抵抗をスケールします。
旗をパタパタさせるは、Normal DragとTangent Dragを別々の値にする必要があります。
Tangent Drag
dragtangent
アトリビュートを作成して、この値を設定します。
これは、風のフォースを適用した時に、サーフェスの接線方向またはカーブの接線方向にポイントの抵抗をスケールします。
Pin to Animation
Pin Points
ターゲットアニメーションにピン留めさせるポイント。 通常では、このターゲットアニメーションはVellum Solverの1番目の入力ですが、そのVellum Solver SOP上で上書きしたり、Vellum Source DOPを使って上書きすることができます。
Pin Type
ポイント位置をターゲットアニメーションにピン留めさせる方法。
Permanent
mass
アトリビュートを0
に設定して、そのポイントをハード拘束にします。
しかし、元々mass
に値が入っていなかった場合、後でこの拘束を開放することはできません。
Stopped
stopped
アトリビュートを1
に設定して、そのポイントをハード拘束にします。
mass
は影響を受けないので、後でstopped
を0
にリセットすることで、POP操作がポイントのダイナミクスを復元することができます。
Soft
ゼロ長のDistance拘束がポイントとそのターゲット位置の間に作成されます。 この拘束では、Stretch Stiffness と Damping Ratio の値が使用されます。
Orientation Pin Type
ヘアーでは、ポイントの位置を維持させるだけでなく、その向きも拘束したいことがよくあります。
None
向きをターゲットアニメーションに拘束しません。
Same as Position
位置拘束のルールを使用します。Stoppedの場合、stopped
アトリビュートが3に設定され、どちらのタイプの更新も抑制されるようにします。
Soft
ピン留めしたポイントの向きを維持するBend/Twist拘束をターゲットアニメーションの向きに追加します。 この拘束では、Bend Stiffness と Damping Ratio の値が使用されます。
Match Animation
計算中にアニメーションからターゲットを更新するのか、初期値のみを使用するのか制御します。
Closest Point
Constrain to Closest Point
ソースポイントに合致したポイントを検索する時、ターゲットポイントを順々に走査するのではなく、まず最初に一番近いポイントを取得します。
Use Closest Location on Primitive
Attach to Geometry拘束では、単に最近接ポイントを選択するのではなくて、プリミティブ上の一番近い位置を選択します。 そして、そのプリミティブ番号と重心座標が格納されます。
Max Distance
ポイントの縫合を考慮する最大距離。
Glue Search
Cluster Attrib
異なるピースのポイント間にGlue拘束を作成します。 この拘束は、同じクラスタのポイント間でのみ作成されます。 クラスタの値が-1なら、接着は行なわれません。
Max Search Dist
接着ポイントを検索する最大距離。
Max Search Points
ポイントの接着を考慮する最大ポイント数。
Constraints Per Point
ポイント毎に作成するGlue拘束の数。
Detach Object Chance
各ピースは、この確率に基づいて、接着なしとマークされ、何も接着拘束を受け取ることも生成することもしません。 これによって、ほつれ毛を表現することができます。
Detach Point Chance
各ポイントのペアは、この確率に基づいて、接着なしとマークされます。
Seed
Detach Chanceの生成に使用するランダムシード。
Strut Search
Max Strut Length
Struts(支柱)を作成する最大距離。 この距離は、オブジェクトの直径を覆うほど十分な長さにしなければなりませんが、極端に長い支柱を回避することで、不具合を回避することができます。
Direction Attribute
Struts(支柱)は、ピースを検索するDirection Attributeの方向に光線を送信することで作成されます。 デフォルトの方向は、サーフェスの法線が使用されます。
Invert Normals
光線を送信する時のオブジェクト法線の意味を逆にします。 これは、入力ジオメトリの法線が逆になっている時に役立ちます。
Test Normals
Struts(支柱)のゴールでの法線を検証し、支柱が内側から適切に作成されているかどうかを示します。
Direction Jitter
Strut(支柱)が作成される方向をずらすことで、複数の支柱内での対称性を崩します。
Constraints Per Point
各ポイントに追加するStruts(支柱)の最大数。
Detach Point Chance
Struts(支柱)なしとマークされるポイントの確率。
Seed
JitterとDetach Chanceを制御するランダムシード。
Ray Offset
光線の送信元であるサーフェスに当たらないようにするために、Strut(支柱)の初期光線をオフセットさせる必要があります。
Stretch
Stiffness
拘束の剛性。これは、拘束がパーティクルを初期の静止状態の方に戻そうとする強さを制御します。 初期値を決める際は、10倍で値を変更してみると良いでしょう。
Stiffness Attribute
StiffnessをスケールさせるPointアトリビュート。
Stiffnessを効果的に変化させるには、桁違いの大きさでペイントする必要がありますが、これは対数的な効果があります。
Scale
Stiffnessに対する単一スライダコントロール。
Stiffnessを効果的に変化させるには、桁違いの大きさでペイントする必要がありますが、これは対数的な効果があります。
Damping Ratio
Stiffness拘束は、許容できないほどに振動または微震する傾向があります。 Damping Ratioは、この拘束を評価した時にエネルギーを放出することでそれを軽減します。 しかし、Damping(減衰)を大きくしすぎると、満足した拘束にならなくなってしまいます。1未満の値を使用してください。
Damping Attribute
Damping(減衰)を調整するアトリビュートです。これがDamping Ratioと乗算されます。
Scale
Damping(減衰)を制御する単一スライダコントロール。これがDamping Ratioと乗算されます。
Rest Length Scale
Distance拘束のRest Length(自然長)は、ポイント間の元々の距離になっています。
このスケールを使用することで、この距離を長くしたり短くすることができます。
0
に設定すると、それらのポイントが引っ付くようになります。
Compression Stiffness
初期の自然長よりも短く圧縮した時の拘束の剛性。 非常に剛性の強い低解像度の布は、Bend拘束が原因というよりも、そのトポロジーが原因で曲げることができなくなる可能性があります。 三角形の網目になっていて、その布が完全に硬くなっていれば、それを曲げる方法はほぼありません。 Compression Stiffnessを下げることで、その布をつぶしたり、流動性を取り戻すことができます。 通常では、高解像度の布に対して、この値を上げます。
Enable Warp/Weft
方向に基づいた剛性の調整を有効にします。これによって、布の網目が縦糸、横糸に対して別々に伸縮させることができます。
Anisotropy
Warp Scale
Warp(縦糸)である材質u軸方向の布のスケール係数。これは、対数乗数です。
Weft Scale
Weft(横糸)である材質v軸方向の布のスケール係数。これは、対数乗数です。
Shear Scale
対角線である材質uv軸方向の布のスケール係数。これは、対数乗数です。
Material UV
Warp(縦糸)とWeft(横糸)を計算する座標系を指定するためのPointアトリビュート。
Enable Plasticity
Plasticity(可塑性)は、オブジェクトを新しい静止位置に落ち着かせることができます。 十分な圧力を加えると、静座標が現在の動座標にブレンドされるので、オブジェクトが新しい形状を維持するようになります。
Plasticity
Threshold
この閾値以下では、材質が元の形状に戻ります。 この閾値を越えて変形させると、材質が徐々に新しい形状に変形し始めます。
Threshold Attribute
Stretch Thresholdにスケールをかけるアトリビュート。
Scale
Thresholdの単一スケールスライダ。
Ratio of Current Rest Length
閾値には、絶対距離か相対距離を指定することができます。 相対距離としての0.1の値は、110%の伸長または90%の収縮で塑性流動が発動されることを意味します。
Rate
材質が流動し始めた時に新しい自然長に順応する速度。
Rate Attribute
Plastic Rateにスケールをかけるアトリビュート。
Scale
Plastic Rateの単一スケールスライダ。
Hardening
一部の塑性材質は、変形が加わると剛性が強くなります。そのような材質にはHardeningを1より大きい値に設定します。 他の塑性材質は柔らかくなるので、そのような材質にはHardeningを1未満の値に設定します。 これは、Stiffness(剛性)に対する対数乗数です。
Hardening Attribute
Plastic Hardeningにスケールをかけるアトリビュート。
Scale
Plastic Hardeningの単一スケールスライダ。
Output Group
生成されたStretch拘束すべてが、このプリミティブグループに追加されます。 これは、後でVellum Constraint Property DOPを使って、それらの拘束を編集するのに役立ちます。
Keep Unique within Output Group
Output Group 内の拘束が、特定のポイントを1度だけ拘束できるようにします。 動的に拘束を生成する時、フレーム毎に同じポイント間で拘束を何度も生成してしまうことがよくあります。 Output Group内のポイントを固有に維持することで、拘束が何度も繰り返されて生成されるのを回避することができます。
Bend
Add Bend across Welds
ポイントを接合した時に、2つの外側エッジが内側エッジなってしまうことがあります。 それらのエッジに何もBend拘束がなければ、そのシーム(継ぎ目)が弱くなり、折り目や捻れが目立ってしまいます。 このオプションは、これを検出した箇所にBend拘束を生成します。
Copy Neighboring Stiffness
生成されるBend拘束の値が周囲の三角形の屈曲からコピーされるので、パラメータをチャンネルリンクすることなく、整合性が保たれた布を構築することができます。
Stiffness
Bend拘束の剛性。 初期値を決める際は、10倍で値を変更してみると良いでしょう。
Bend拘束は角度の差分に基づいているので、布の解像度が高いほど、類似した曲率半径を表現するには剛性を強くする必要があることに注意してください。 高解像度モデルに対して非常に強い曲げ剛性を設定してしまうと、収束させるのに非常に多くの反復回数が必要になることに注意してください。
Stiffness Attribute
StiffnessにスケールをかけるPointアトリビュート。
Stiffnessを効果的に変化させるには、桁違いの大きさでペイントする必要がありますが、これは対数的な効果があります。
Scale
Stiffnessに対する単一スライダコントロール。
Stiffnessを効果的に変化させるには、桁違いの大きさでペイントする必要がありますが、これは対数的な効果があります。
Damping Ratio
Stiffness拘束は、許容できないほどに振動または微震する傾向があります。 しかし、Damping(減衰)を大きくしすぎると、満足した拘束にならなくなってしまいます。1未満の値を使用してください。
Damping Attribute
Damping(減衰)を調整するアトリビュートです。これがDamping Ratioと乗算されます。
Scale
Damping(減衰)を制御する単一スライダコントロール。これがDamping Ratioと乗算されます。
Rest Angle Scale
Bend拘束のRest Angle(自然角)は、三角形の間の元々の二面角になっています。
このスケールを使用することで、この角度を広げたり狭めることができます。
0
に設定すると、それらの三角形が平坦な面として扱われます。
Max Branch Angle
Torsion(ねじり力)のない糸のBend拘束を追加した時、それらのBend拘束はRest Angle(自然角)がまっすぐに近いほど良く動作します。 Max Branch Angleを設定することで、網状のロープのような糸は、まっすぐなロープに沿ってのみBend拘束が効き、垂直の断面にはBend拘束が効かないようにすることができます。
Enable Plasticity
Plasticity(可塑性)は、オブジェクトを新しい静止位置に落ち着かせることができます。 十分な圧力を加えると、静座標が現在の動座標にブレンドされるので、オブジェクトが新しい形状を維持するようになります。
Plasticity
Threshold
この閾値以下では、材質が元の形状に戻ります。 この閾値を越えて変形させると、材質が徐々に新しい形状に変形し始めます。
これは、絶対角度です。Rest Angle(自然角)はまっすぐなことが多いので、Stretch拘束のような相対値の概念はBend拘束には当てはまりません。
Threshold Attribute
Bend Thresholdにスケールをかけるアトリビュート。
Scale
Thresholdの単一スケールスライダ。
Rate
材質が流動し始めた時に新しい自然角に順応する速度。
Rate Attribute
Plastic Rateにスケールをかけるアトリビュート。
Scale
Plastic Rateの単一スケールスライダ。
Hardening
一部の塑性材質は、変形が加わると剛性が強くなります。そのような材質にはHardeningを1より大きい値に設定します。 他の塑性材質は柔らかくなるので、そのような材質にはHardeningを1未満の値に設定します。
Hardening Attribute
Plastic Hardeningにスケールをかけるアトリビュート。
Scale
Plastic Hardeningの単一スケールスライダ。
Output Group
生成されたStretch拘束すべてが、このプリミティブグループに追加されます。 これは、後でVellum Constraint Property DOPを使って、それらの拘束を編集するのに役立ちます。
Keep Unique within Output Group
Output Group 内の拘束が、特定のポイントを1度だけ拘束できるようにします。 動的に拘束を生成する時、フレーム毎に同じポイント間で拘束を何度も生成してしまうことがよくあります。 Output Group内のポイントを固有に維持することで、拘束が何度も繰り返されて生成されるのを回避することができます。
Breaking
Enable Breaking
拘束プリミティブは、十分な変形または圧力が加わった時にソルバによって削除することができます。 つまり、実質的にその拘束を切ります。 計算中に拘束プリミティブを削除することで拘束が切れるので、手動でそのタイミングを完全制御することもできます。
まず最初に可視化を有効にしてシミュレーションを実行すると、閾値に対してどのような値が良いのかわかるので便利です。
Threshold
拘束の切断を発動させる圧力または変位の大きさ。
Threshold Attribute
ThresholdにスケールをかけるPointアトリビュート。
Scale
Thresholdにスケールをかける単一スライダ。
Type
これは、ソルバがWeld拘束やHair拘束の切断を決定する方法を制御します。
None
自動化されたテストを実行しません。
Stretch Stress
伸長圧力が閾値を越えなければなりません。
Bend Stress
屈曲圧力が閾値を越えなければなりません。
Stretch Distance
ゴール位置から現行位置までの絶対距離が閾値を越えなければなりません。
Stretch Ratio
現行長と自然長の比率が閾値を越えなければなりません。
Bend Angle
現行角と自然角の差が閾値を越えなければなりません。この値の単位は度です。
Type
これは、ソルバがDistance拘束の切断を決定する方法を制御します。
None
自動化されたテストを実行しません。
Stretch Stress
伸長圧力が閾値を越えなければなりません。
Stretch Distance
ゴール位置から現行位置までの絶対距離が閾値を越えなければなりません。
Stretch Ratio
現行長と自然長の比率が閾値を越えなければなりません。
Attributes
Promotion Method
スケール乗算アトリビュート関数は、拘束で必要なポイント上のスケールアトリビュート値を単一拘束に対して別々の値を適用することができます。これは、それらの値をブレンドする方法を制御します。
Maximum
最大スケール係数が使用されます。
Minimum
最小スケール係数が使用されます。
Average
ポイントスケール係数の平均が使用されます。
Use Source
例えばStitch拘束で、ソースポイントスケール係数が使用されます。
Use Target
例えばStitch拘束で、ターゲットポイントスケール係数が使用されます。
Examples
The following examples include this node.
SimpleCrowdCloth Example for Agent Vellum Unpack geometry node
このサンプルでは、Vellum Solverを使って、群衆キャラクタの布をシミュレーションする単純なワークフローを説明しています。
See also |