struct in UnityEngine




They are compact, don't suffer from gimbal lock and can easily be interpolated. Unity internally uses Quaternions to represent all rotations.

They are based on complex numbers and are not easy to understand intuitively. You almost never access or modify individual Quaternion components (x,y,z,w); most often you would just take existing rotations (e.g. from the Transform) and use them to construct new rotations (e.g. to smoothly interpolate between two rotations). The Quaternion functions that you use 99% of the time are: Quaternion.LookRotation, Quaternion.Angle, Quaternion.Euler, Quaternion.Slerp, Quaternion.FromToRotation, and Quaternion.identity. (The other functions are only for exotic uses.)

Quaternion.operator * を使用して、ひとつの回転をもう 1 つの回転でさらに回転させるか、ベクトルを回転により回転させることができます。

Note that Unity expects Quaternions to be normalized.

Static 変数

identity単位回転 (読み込みのみ可)


this[int]イデックスによって x、y、z、w にアクセスする。
wクォータ二オンの W 成分。クォータ二オンを熟知していない限り、この値を直接変更しないでください。
xクォータ二オンの x 成分。クォータ二オンを熟知していない限り、この値を直接変更しないでください。
yクォータ二オンの Y 成分。クォータ二オンを熟知していない限り、この値を直接変更しないでください。
zクォータ二オンの Z 成分。クォータ二オンを熟知していない限り、この値を直接変更しないでください。


Quaternion与えられた x、y、z、w 成分で新規のクォータ二オンを作成します。

Public 関数

Set既存の Quaternion に x、y、z、w の成分を設定します
SetFromToRotation fromDirection から toDirection への回転を作成します。
SetLookRotation指定された forward と upwards 方向に回転します。
ToAngleAxis回転を座標に対する角度の値 (AngleAxis) に変換します。

Static 関数

Angle2 つの回転 a と b 間の角度を返します。
AngleAxis axis の周りを angle 度回転する回転を作成します。
Dot2 つの回転の内積を返します。
EulerReturns a rotation that rotates z degrees around the z axis, x degrees around the x axis, and y degrees around the y axis.
FromToRotation fromDirection から toDirection への回転を作成します。
Lerp a と b の間を t で補間し、その後、その結果を正規化します。パラメーター t は、[0, 1] の範囲です。
LerpUnclamped a と b の間を t で補間し、その後、その結果を正規化します。パラメーター t は[0,1]の範囲にクランプされていません。
LookRotation指定された forward と upwards 方向に回転します。
RotateTowards from から to への回転を得ます。
Slerp a と b の間を t で球状に補間します。パラメーター t は、[0, 1] の範囲です。
SlerpUnclamped a と b の間を t で球状に補間します。パラメーター t は、限られていません。


operator * lhs と lhs の回転を組合わせます。
operator ==二つのクォータニオンは互いに一致するかどうか