頂点ウエイトボックスを使用したときの頂点ウエイトはどのように計算されているのですか?

Page updated :

The page you are currently viewing does not support the selected display language.

頂点ウエイトボックスを使用することにより、ボーンと頂点を関連付けられますが、どのように計算されているのかを下に説明します。

例として、人の腕を使ってみます。下の図は、左から「手」「肘下」「肘上」「肩」という名前のボーンが繋がっているものとします。

手、肘下、肘上、肩

まず、「肘下」と関連付けた頂点ウエイトボックスを、下のように頂点を囲むように配置したとします。

肘下のボックス

すると、肘下のボーンの頂点ウエイトは下のように割り当てられます。

ウエイトの割り当て

ちなみに 1.0 は、指定したボーンの動きに100%追従する頂点であり、 0.0 は指定したボーンの動きにまったく反応しない頂点という意味になります。

このように指定した頂点ウエイトで、肘下のボーンを動かした場合、肘上より右にある頂点は一切動かず、肘の真ん中から、肘下までの頂点が100%ボーンと一緒に動くことになります。

ここで、肘上に関連付けられたボックスを下のように肘上の頂点を囲むように配置したとします。肘の真ん中辺りは、2つのボックスで囲まれることとなります。すると、肘下、肘上の頂点ウエイトは下のように割り当てられます。

肘下のブレンドしたウエイト

肘上のブレンドしたウエイト

このように2つ以上のボックスで囲まれた頂点は、滑らかなウエイト値が割り当てられることが分かります。  上の場合の肘の頂点ウエイト値は重なったボックスの大きさによって、ある程度変化するので、いろいろ調節して試してみてください。

下はこの状態で、アニメーションでボーンを動かしたときの図です。

なめらかな関節

もし肘の部分を下のように重ねないと、少しカクカクした動きになってしまうことが分かります。

ブレンドしないウエイト

カクカクした関節

ちなみに、頂点に関連付けられるボーンの数は最大4つまでです。5つ以上は4つに切り捨てられます。