物体旋转

调置旋转角度时,一般使用 localEulerAngles ,而不是 rotation

给物体调转一个旋转角度。

1、 Quaternion 四元组 ( x, y, z, w )

transform.rotation = ... 不便操作,官方不建议使用

2、欧拉角 Euler Angle

transform.eulerAngles = new Vector3(0, 45, 0) ;
transform.localEulerAngles = new Vector3(0, 45, 0) ;

以下几个角度效果相同:

transform.eulerAngles = new Vector3(0, 45, 0);
transform.eulerAngles = new Vector3(0, 405, 0); // 45 + 360
transform.eulerAngles = new Vector3(0, -315, 0); // 45 - 360

旋转

在Update() 修改角度,持续旋转

Vector3 angles = transform.localEulerAngles;
angles.y += 0.5f;  
transform.localEulerAngles = angles;

优化,使之匀速旋转,

float rotateSpeed = 30 ; // 每秒转30度角

相对旋转

gameObject.transform.Rotate(0, 0.5f, 0, Space.Self);
posted @ 2024-07-14 15:20  暖暖De幸福  阅读(5)  评论(0编辑  收藏  举报