タグ

2013年8月9日のブックマーク (1件)

  • 四元数(クォータニオン)でモデルを回転

    四元数(クォータニオン)でトーラスを回転 なかなかGLSLのサンプルに到達できないのですが、GLSLの前に、モデルをグリグリ動かすことはやっておいた方がいいと思い、四元数(クォータニオン)でモデルを回転するサンプルを作成しました。クォータニオンについては、ネット上にいろいろ解説がでており、私はそれよりもきちんと説明できる自信はないのですが、簡単に紹介します。 クォータニオンは、一つの実数部と三つの虚数部(みたいなもの)i, j, kから成る数で、次のように表記します。 ここで、i2 = j2 = k2 = ijk = -1 が成り立ちます。3次元の座標(x, y, z)は、クォータニオンを使用して次のように表現します。 また、任意軸 (ax, ay, az) 回りのθ回転は、次のように表すことができます。 この時、3次元座標pの任意軸回りの回転qは、次のような計算が成り立ちます。 ここで、