rotation
A Quaternion that stores the rotation of the Transform in world space.
Read time 1 minuteLast updated 4 days ago
Definition
- Type: Property
- Namespace: UnityEngine
- Assembly: UnityEngine.CoreModule
public Quaternion rotation { get; set; }
Remarks
Transform.rotation stores a Quaternion. You can use Transform.rotation to rotate a GameObject or provide the current rotation. Do not attempt to edit/modify Transform.rotation. Transform.rotation is less than 180 degrees.
Transform.rotation has no gimbal lock.
To rotate a Transform, use Transform.Rotate, which uses Euler Angles.
If you want to match values you see in the Inspector, use the Quaternion.eulerAngles property on the returned Quaternion.
using UnityEngine;// Transform.rotation example.// Rotate a GameObject using a Quaternion.// Tilt the cube using the arrow keys. When the arrow keys are released// the cube will be rotated back to the center using Slerp.public class ExampleScript : MonoBehaviour{ float smooth = 5.0f; float tiltAngle = 60.0f; void Update() { // Smoothly tilts a transform towards a target rotation. float tiltAroundZ = Input.GetAxis("Horizontal") * tiltAngle; float tiltAroundX = Input.GetAxis("Vertical") * tiltAngle; // Rotate the cube by converting the angles into a quaternion. Quaternion target = Quaternion.Euler(tiltAroundX, 0, tiltAroundZ); // Dampen towards the target rotation transform.rotation = Quaternion.Slerp(transform.rotation, target, Time.deltaTime * smooth); }}
In the above example, the Transform.rotation is described by a quaternion. For more information, refer to Controlling rotation with the Quaternion class.