スキンメッシュアニメーションの原理2

スタティックメッシュを変形させるにはどうすれば良いのでしょう?
スタティックメッシュを構成する要素には

①頂点座標
②法線
③UV
④マテリアル
⑤テクスチャ

等がありますが、この中の ①頂点座標 を変更してあげれば
スタティックメッシュが変形します。

頂点座標を変更すると言っても glTranslatef とか glRotatef 等では
モデルビュー行列が変更されるだけで頂点座標そのものは変更できません。
では、何か、頂点座標を変更するようなものがあるかと言うと、
そのようなものは用意されていません。

スタティックメッシュの頂点座標が格納されている配列データを
直接、平行移動やら回転等をしているかのようにデータを書き換えなければなりません。
この場合、あくまでも書き換えるのは表示用のデータで、初期姿勢のデータを
変更してはいけません。

スキンメッシュアニメーションの仕組みは

①ボーンが階層アニメーションを行っている。


の次は

②頂点座標データを書き換える。

です。

頂点座標と言っても X,Y,Z の三次元データなので数学的に計算できそうです。
そこで登場するのが同次座標系というものなのですが、解説は次回にします。

 

 

 

 

 

最終更新:2012年04月20日 20:01