Quaternion として保存されるワールド空間での Transform の回転
Unity は内部的に Quaternions として回転を保存します。オブジェクトを回転させるには Transform.Rotate を使用します。 オイラー角のような回転値を設定したい場合は Transform.eulerAngles を設定してください。
// Reset the world rotation transform.rotation = Quaternion.identity;
using UnityEngine; using System.Collections;
public class ExampleClass : MonoBehaviour { void Example() { transform.rotation = Quaternion.identity; } }
他の例
// Smoothly tilts a transform towards a target rotation.
var smooth = 2.0;
var tiltAngle = 30.0;
function Update () {
var tiltAroundZ = Input.GetAxis("Horizontal") * tiltAngle;
var tiltAroundX = Input.GetAxis("Vertical") * tiltAngle;
var target = Quaternion.Euler (tiltAroundX, 0, tiltAroundZ);
// Dampen towards the target rotation
transform.rotation = Quaternion.Slerp(transform.rotation, target, Time.deltaTime * smooth);
}
using UnityEngine; using System.Collections;
public class ExampleClass : MonoBehaviour { public float smooth = 2.0F; public float tiltAngle = 30.0F; void Update() { float tiltAroundZ = Input.GetAxis("Horizontal") * tiltAngle; float tiltAroundX = Input.GetAxis("Vertical") * tiltAngle; Quaternion target = Quaternion.Euler(tiltAroundX, 0, tiltAroundZ); transform.rotation = Quaternion.Slerp(transform.rotation, target, Time.deltaTime * smooth); } }