Unityにおけるオイラー角の変換方法


Unityでは、オブジェクトの回転を表すためにオイラー角が使用されます。オイラー角は、オブジェクトの回転を3つの角度(ピッチ、ヨー、ロール)で表現します。

オイラー角の変換にはいくつかの方法があります。以下に、いくつかの一般的な方法とそれぞれのコード例を示します。

  1. Quaternion.Eulerメソッドを使用する方法: Quaternion.Eulerメソッドは、オイラー角をQuaternion(四元数)に変換するために使用されます。

    using UnityEngine;
    // オイラー角をQuaternionに変換する
    Vector3 eulerAngle = new Vector3(30f, 45f, 60f);
    Quaternion quaternion = Quaternion.Euler(eulerAngle);
  2. TransformクラスのRotateメソッドを使用する方法: TransformクラスのRotateメソッドを使用すると、オイラー角に基づいてオブジェクトを回転させることができます。

    using UnityEngine;
    // オブジェクトをオイラー角に基づいて回転させる
    Transform transform = GetComponent<Transform>();
    Vector3 eulerAngle = new Vector3(30f, 45f, 60f);
    transform.Rotate(eulerAngle);
  3. QuaternionクラスのeulerAnglesプロパティを使用する方法: QuaternionクラスのeulerAnglesプロパティを使用すると、Quaternionをオイラー角に変換することができます。

    using UnityEngine;
    // Quaternionをオイラー角に変換する
    Quaternion quaternion = new Quaternion(0.3f, 0.5f, 0.7f, 0.9f);
    Vector3 eulerAngle = quaternion.eulerAngles;

これらの方法を使用することで、Unityでオイラー角を変換することができます。必要に応じて、適切な方法を選択して使用してください。