スムーズ スキニングのバインド方法

 
 
 

ユーザが選択するバインド方法によって、スキンをバインドするときに最初のインフルエンス ウェイトがスムーズ スキン ポイントにどのように設定されるかが決まります。(この方法はスムーズ バインド オプション(Smooth Bind Options)バインド方法(Bind Method)で指定できます。スムーズ スキンのバインド も参照してください。)

ジョイントの近接度に基づいてウェイト付けを行う

バインド方法(Bind Method)最短距離(Closest Distance)に設定すると、スケルトンの階層が無視されます。スムーズ スキン ポイントのウェイト値に 2 番目に大きく作用するジョイントは、常にポイントから 2 番目に近いジョイントになります。スケルトンの構造やモデルの配置によっては、このジョイントはスケルトンの階層で最も近いジョイントよりも上位または下位に位置していても構いません。たとえば、キャラクタの腕がぶら下がっており、前腕のボーンが腰のボーンの近くにある場合には、腰のボーンが腕のスキン ポイントに対して 2 番目に大きく作用する可能性があります。このことによって、腕のスキン ポイントのウェイト値に不適切なインフルエンスが生じることにもなり得ます。

スケルトン階層に基づくウェイト値の作用

バインド方法(Bind Method)階層内の最近接(Closest in Hierarchy)に設定すると、スケルトンの階層が考慮されます。2 番目に大きく作用するジョイントは、最も近いジョイントの親ジョイント、または子ジョイントになります。

たとえば、キャラクタの腕がぶら下がっており、前腕のボーンが腰のボーンの近くにある場合には、腕のスキン ポイントは確実に腰のボーンには作用されないことになります。これは、両者の距離が近いにも関わらず、スケルトンの階層においては腰のボーンが前腕のボーンの近くにないからです。

ヒート マップに基づいてウェイト付けを行う

バインド方法(Bind Method)ヒート マップ(Heat Map)に設定すると、熱放散テクニックによってウェイトが分散されます。これにより、通常、階層内の最近接(Closest in Hierarchy)および最短距離(Closest Distance)バインド方法よりも優れた既定結果が得られます。

ヒート マップ バインドは、ヒート ソースとして機能しているメッシュ内の各インフルエンス オブジェクトに基づいて初期ウェイトを設定し、周囲のメッシュにウェイト値を放出します。オブジェクトの間近では高い(熱い)ウェイト値が発生し、オブジェクトから離れるにつれて低い(冷たい)値へと消散していきます。

ヒート マップ(Heat Map)バインド中には、メッシュの内部に定義されたインフルエンス オブジェクトだけが熱を放出します。たとえば、メッシュの外に伸びる終了ジョイントを持つスケルトンにバインドすると、その終了ジョイントはバインド中にウェイトを受け取りません。また、メッシュもまったく影響を受けません。ただし、ボーンがメッシュを貫通するがそのジョイント オブジェクトはメッシュを貫通しないというケースでは、親ジョイントがメッシュの外にあっても、ボーンから放出されるすべてのインフルエンスが親ジョイントに渡されます。

注:ヒート マップ(Heat Map)バインド中には、メッシュの内部に定義されたインフルエンス オブジェクトだけが熱を放出します。たとえば、メッシュの外に伸びる終了ジョイントを持つスケルトンにバインドすると、その終了ジョイントはバインド中にウェイトを受け取りません。また、メッシュもまったく影響を受けません。ただし、ボーンがメッシュを貫通するがそのジョイント オブジェクトはメッシュを貫通しないというケースでは、親ジョイントがメッシュの外にあっても、ボーンから放出されるすべてのインフルエンスが親ジョイントに渡されます。

インタラクティブ バインド

これらのスムーズ バインド方法に代わる方法として、インタラクティブ バインドも使用できます。この方法では、バインドされるジョイントごとにボリューム マニピュレータが作成されます。各インフルエンスによって影響を受けるメッシュの領域は、これらのマニピュレータのサイズとシェイプを操作することによって定義します。詳細については、スムーズ スキニングのインタラクティブ バインドを参照してください。

関連項目