一、自身Y轴旋转

transform.Rotate(new Vector3(0,1,0));

二、自身Y轴旋转,0.2f的速度

transform.Rotate(Vector3.up, 0.2f);

二、绕另一个物体旋转

1.实现代码

private void RotateAround(Vector3 center, Vector3 axis, float angle) { //绕axis轴旋转angle角度 Quaternion rotation = Quaternion.AngleAxis(angle, axis); //旋转之前,以center为起点,transform.position当前物体位置为终点的向量. Vector3 beforeVector = transform.position - center; //四元数 * 向量(不能调换位置, 否则发生编译错误) Vector3 afterVector = rotation * beforeVector;//旋转后的向量 //向量的终点 = 向量的起点 + 向量 transform.position = afterVector + center; //看向Sphere,使Z轴指向Sphere transform.LookAt(Sphere.transform.position); }

2.调用代码

gameObject.transform.RotateAround(Sphere.transform.position, Sphere.transform.up, 72 * Time.deltaTime);