TOYSTUDIO SDK
1.6.1.3
|
TOYSTUDIOの表示に使用している座標変換の詳細です。
OpenGLなどと同じ右手座標系で、各座標軸の方向は以下のようになっています。
TOYSTUDIOではベクトルとして行ベクトル形式を使用していますので、ベクトル は
となり、各要素は行方向に並びます。ベクトルに4×4行列を掛ける場合、
のように行列を右から掛けます。これはDirectXなどと同じ形式です。
オブジェクトのピボット、スケール、せん断、回転、移動の変換行列をそれぞれ、 、 、 、 、 とすると、 親オブジェクトの座標系におけるオブジェクトのローカル変換行列 は
となります。 例外的に、 オブジェクトがジョイント タイプ(TA_OBJECT_JOINT)で以下の条件を満たす場合、
親ジョイントのスケールの逆行列を とすると、 オブジェクトのローカル変換行列 は
となります。
オブジェクトのローカル変換行列は、 CTaObject::GetTransform() で取得できます。
オブジェクトのローカル変換行列を 、その親オブジェクトのローカル変換行列を 、 さらにその親オブジェクトのローカル変換行列を とすると、 オブジェクトのワールド変換行列 は
となります。
オブジェクトのワールド変換行列は、 CTaObject::GetWorldTransform() で取得できます。