物体的旋转问题(自转和围绕另一个物体旋转)

  一、B物体围绕A物体旋转

方法1 利用transform.RotateAround方法

将脚本挂在A上 即可实现B物体围绕A物体旋转

 transform.RotateAround(B.position,B.up,30*Time.detal);

  Vector3: B.position:B的位置;

     Vector3 axis: B.up:B旋转所围绕的轴;

  Float:30*Time.detal:B旋转时的速度的大小;

方法2 利用transform.Rotate方法

将B作为A的子物体,将脚本挂在父物体A上,

 transform.Rotate(Vector.up,30*time,Space.self)

杂记:

1.关于Euler,返回表示旋转的欧拉角度

rotation.eulerAngles = Vector3(0, 30, 0)

EulerAngles(a,b,c)

绕X轴旋转euler.x度

绕Y轴旋转euler.y度

绕Z轴旋转euler.z度

rotation = Quaternion.Euler(0, 30, 0);

rotation = Quaternion.Euler(Vector3(0, 30, 0));

绕X轴旋转0度

绕Y轴旋转30度

绕Z轴旋转0度

2.关于Quaternion.AngleAxis(同上的条件测试:只能作用于自身)

绕axis轴旋转angle创建一个旋转

transform.rotation=Quaternion.AngleAxis(30,Vector3.up);

绕Y轴旋转30度

 

原文地址:https://www.cnblogs.com/HeYIcengshuo/p/6403178.html