2010年2月26日 (金)1オブジェクトは3人格
おはようございます。本日の当番、モーションデザイナーのY.Nです。
本日は回転についてのお話です。
オブジェクトの姿勢を記録する方法としてxyz 3軸周りの回転値を使う場合、
いろいろと不思議に思える現象に出くわします。
たとえば、以前I.Hさんが自動で補間される中間ポーズが信用ならない旨を記事で書かれていました。
これもxyz 3軸周りの回転値の記録を動きの再生に使っているツールには、
必ず付きまとう現象です。
今回注目するのも3軸周りの回転値を使っていると出くわす不思議な現象、
回転軸による振る舞いの違いについてです。
・回転計算の順序
xyz の3軸周りの回転値の記録をオブジェクトに反映、表示させる際、
ツールは自身に設定されている特定の順番で1軸ずつ回転の計算をしていきます。
この回転の計算が行列の掛け算で行なわれるため、順番による影響が出てくるようになります。
たとえばsoftimage|XSIではデフォルト設定だと
x→y→z の順番で計算が行なわれます。
計算順序がどういう風にオブジェクトに影響を与えるのでしょうか。
x,y,z全軸に回転が入ったオブジェクトでその様子を見てましょう。
図で赤色の矢印がオブジェクトのx軸、緑がy軸、青がz軸を表しています。
また、長い方の青い矢印はグローバル座標のz軸を表しています。
今回はグローバル座標で結果を確認します。
なお、図で赤色の矢印がオブジェクトのx軸の向き、緑がy軸、青がz軸を
表しています。
あと、長い方の青い矢印はグローバル座標のz軸を表しています。
・回転値Xを変化させる
回転はオブジェクトの持っている3軸のx軸周りで回転します(図1)
図1
・回転値Yを変化させる
一見するとよくわからない軸周りで回転しています。(図2)
しかし、オブジェクトのz軸周りの回転角と同じ角度の棒を表示させてみると、
オブジェクトのy軸がz軸の回転分だけ傾いた向きで回転していることが
わかります(図3)
図2
図3
・回転値Zを変化させる
回転はグローバル座標のz軸周りで回転します(図4)
オブジェクトのz軸の向きとは全く無関係に回転します。
図4
1個のオブジェクト内で、ある軸周りでは自身の向いている方向周りで回転させて
見せたかと思いきや、またある軸ではグローバルの回転軸周りで自身を回転させる…回そうとする軸ごとに異なった対応をして来るので、補間が信用ならないことも相まって3DCGソフトを使い始めたころはこの3人格でよく混乱させられたものです。
一日の大半をこいつと向き合うモーションデザイン業務をしていてもまだたまに
混乱することがあります。
まぁ慣れるよりしょうがないんですけどね。
| 固定リンク | コメント (0) | トラックバック (0)
最近のコメント