2008/09/01

ICE - Deformation Basic

リアクション: 
ICEを使った、とても基本的なDeformationです。

現状のバージョンでは、基本的にICEは、Kinematicsに値を入れることは出来なくなっています。
環境変数を変えれば可能ですが、サポート対象外です。なんでかはナゾですが。

ですので、ポイント情報を、ヌルの変換にそのまま追従させる、poseコンストもどきをやってみました。



ICE Treeの構造です。

cubeに、ICE Treeを構築します。
Set Dataに、self.PointPositionをセットします。
Multiply Vector by Matricsノードを繋ぎます。
Get Dataノードに、self.PointPositionをセットし、上記ノードのvectorに接続します。
別のGet Dataノードに、null.kine.localをセットし、Matrixに接続します。



以上で、nullの動きを伝えるICE Treeが完成です。

次に、WeightMapを利用して、2つのnullをコントローラーとした
Envelopeの基本のICE Treeです。



Set Dataにself.PointPositionをセットします。
Multiply Vector by Matrixに接続します。
Get Dataノードに、self.PointPositionをセットし、上記ノードVectorに接続。
Linear Interpolateノードを取得し、MVbMのMatrixに接続します。
上記ノードのFirstにGet Dataノード、null.kine.localを接続します。
SecondにGet Dataノード、null1.kine.localを接続します。
Blendに、Get Weight Map Valueをつなげれば、完成です。



多分、これをたーくさん増やしていけば、ICE Envelopeが完成するはずです。
でも、面倒なので、やってません・・・。
ハッキリ言って、Compounds待ちです。そこまで、頭良く無いのです。残念ながら・・・。
Dual Quaternionが待ち遠しいなぁ。

早く登場しないかなー。

0 件のコメント: