| On this page | |
| Since | 17.0 |
Tip
このノードは、キャラクタのMuscle/ジョイント変形ワークフローをサポートしています。
ジオメトリのケージ変形を行なうには、Lattice Deform SOPを使用します。
Bone Deform SOPは、Bone Captureノード(Bone Capture SOP、
Bone Capture Proximity SOP、
Bone Capture Biharmonic SOP)と併用することでジオメトリを変形させることができます。
ボーンを動かすと、このノードはポイントウェイトに応じてジオメトリのそのポイントを変位させます。
一般的には、“capture_region”という名前のオブジェクト(通常はボーン)内に1つ以上のCapture Regionsが配置されます。 そのオブジェクトはそのオブジェクト階層を通じてCaptureノードに読み込まれます。 そのオブジェクトを動かすと、DeformノードによってCaptureノードのジオメトリが変形します。
このノードは、LinearスキニングメソッドやDual Quaternionスキニングメソッドを使用したり、または、その両方のスキニングメソッドを線形的に混在させて、変形を計算することができます。
Houdini18.0以降、Bone Deform SOPは、2番目と3番目の入力のPointアトリビュートも使用することができます:
-
1番目の入力の
boneCaptureアトリビュートのキャプチャパスは、2番目と3番目の入力のnamePointアトリビュートを使ってマッチングされます。 -
boneCapture内のRestトランスフォームを使用するのではなくて、その2番目の入力のPとtransform(matrix3)Pointアトリビュート値からRestトランスフォームが考慮されます。 -
ボーンオブジェクトのトランスフォームを使用するのではなくて、その3番目の入力の
Pとtransform(matrix3)Pointアトリビュート値からトランスフォームが考慮されます。
Note
現在のところ、このノードは、アトリビュート自体が64ビット精度であっても、32ビット精度でしか変形を行ないません。
アトリビュート ¶
|
boneCapture |
この必須アトリビュートは、変形用のRestトランスフォームとスキンウェイトを定義します。
このアトリビュートは、 |
パラメータ ¶
Group
変形されるポイントを制限するオプションのポイント/プリミティブグループ。
Skeleton Root Path
入力ジオメトリに取り付けられているボーンの親OBJ。
このパラメータが空っぽの場合、pCaptSkelRoot Detailアトリビュートが使用されます。
Skinning Method
変形メソッドを指定します。
Linear
標準で最も高速なメソッド。 しかし、2つのボーン間でジオメトリが捻じれてしまって体積の損失を招く問題が起きる可能性があります。 この問題を解決するには、ボーンを追加して、その変形を緩和させてください。
Dual Quaternion
Dual Quaternionスキニングは、ボーンによる変形を計算するもう1つのメソッドです。 このメソッドは、ジオメトリが捻じれて体積の損失を招く問題に関しては、通例の Linear スキニングよりも良いです。 このメソッドは、キャラクタの肩などのボディパーツで使用することが多いです。
Blend Dual Quaternion and Linear
Blend Attribute で指定されたPointアトリビュートに基づいて、 Linear メソッドと Dual Quaternion メソッドを使用して計算された変形をブレンドします。 Blend Attribute の値が0.0の場合は Linear スキニングの解が使用され、1.0の場合は Dual Quaternion スキニングの解が使用され、0.5の場合は両方の解が均等にブレンドされます。
From Input Geometry
deformSkinMethod文字列Detailアトリビュートによってスキニングメソッドを指定します。
linear文字列値は Linear スキニングメソッド、dualquat文字列値は Dual Quaternion スキニングメソッド、
blenddualquat文字列値は Blend Dual Quaternion and Linear スキニングメソッドが指定されます。
さらにdeformDualQuaternionBlendAttrib文字列Detailアトリビュートには、 Blend Attribute の名前を指定します。
Blend Attribute
Skinning Method が Blend Dual Quaternion and Linear に設定されている場合、ここには、その Blend Dual Quaternion and Linear の解をブレンドする際に使用される浮動小数点アトリビュートの名前を指定します。
Transforms Path
ワールドボーントランスフォームのチャンネルを含んだCHOPノードのオプションのパスで、ボーンの現行状態を上書きします。
Extract Bone Transforms CHOPを使用することで、ボーントランスフォームをキャプチャすることができます。
このパラメータが空っぽの場合、デフォルトではdeformTransformsPathDetailアトリビュートが使用されます。
Other Attributes
変形させる(位置や法線以外の)他のアトリビュートの名前。
通常では、ここにはスペース区切りでアトリビュート名のリストを指定しますが、
*などのパターン文字を使用して複数のアトリビュートをマッチさせることもできます。
アトリビュートがトランスフォーム可能かどうかは、そのアトリビュートの タイプ修飾子 (Attribute Create SOPを参照)で判断されます。
Position 、 Vector 、 Normal 、 Quaternion 、 Transform Matrix の“トランスフォームする”タイプ修飾子を持つアトリビュートのみが変形可能です。
これらのタイプ修飾子を持たないアトリビュートは無視されます。
Deform Normals
有効にすると、ポイントの変形に合わせて法線が変形します。
Note
Deform Normals を無効にすると、 Other Attributes パラメータでマッチした法線の変形も無効になります。
Delete Capture Attributes
有効にすると、boneCapture、pCaptAlpha、pCaptSkelRoot、pCaptFrameなどのキャプチャアトリビュートが削除されて、ジオメトリデータが軽量化されます。
Delete Point Colors
有効にすると、ポイントカラーアトリビュートが削除されて、ジオメトリデータが軽量化されます。
Use OpenCL
有効にすると、OpenCLを使用したGPUアクセラレーションが有効になります。 無効にすると、CPUパスが使用されます。
入力 ¶
Geometry to Deform
変形させるスキンジオメトリ。
そのジオメトリにはboneCaptureアトリビュートが付いている必要があります(例えば、このアトリビュートはBone Capture Biharmonic SOPで生成されます)。
Rest Point Transforms
1番目の入力のboneCaptureアトリビュートのキャプチャパスをこの入力のnamePointアトリビュートに一致させてそのboneCaptureで見つかった値をオーバーライドするRestトランスフォームを用意します。
これらのトランスフォームは、この入力のPとtransform(matrix3)のPointアトリビュート値から計算されます。
Deform Point Transforms
シーン内のBoneノードから変形トランスフォームを取得するのではなくて、1番目の入力の
boneCaptureアトリビュートのキャプチャパスをこの入力のnamePointアトリビュートに一致させて変形トランスフォームを用意します。
これらのトランスフォームは、この入力のPとtransform(matrix3)のPointアトリビュート値から計算されます。
| See also |