版本: Unity 6 (6000.0)
语言英语
  • C#

Transform.rotation

建议修改

成功!

感谢您帮助我们提高 Unity 文档的质量。虽然我们无法接受所有提交,但我们确实阅读了用户提出的每个修改建议,并在适用时进行更新。

关闭

提交失败

由于某些原因,您的修改建议无法提交。请<a>稍后再试</a>。感谢您抽出时间帮助我们提高 Unity 文档的质量。

关闭

取消

切换到手册
public Quaternion rotation;

描述

一个存储 Transform 在世界空间中旋转的 Quaternion

Transform.rotation 存储一个 Quaternion。您可以使用 rotation 旋转一个 GameObject 或提供当前旋转。请勿尝试编辑/修改 rotationTransform.rotation 小于 180 度。

Transform.rotation 没有万向节锁。

要旋转一个 Transform,请使用 Transform.Rotate,它使用欧拉角。

如果您想匹配您在 Inspector 中看到的数值,请在返回的 Quaternion 上使用 Quaternion.eulerAngles 属性。

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); } }

在上面的示例中,rotation 由四元数描述。有关更多建议,请参阅 Unity 中的旋转和方向