旋转

如何表示一个旋转

  • Unity中有三种方式表述一个旋转分别是:
  • Unity中主要用四元数表示旋转
  • 欧拉角和轴角对都可以转成四元数
      (代码和注释)
    

旋转物体

  • 有两种方式:用rotation、loclaRotation属性直接设置旋转值;使用Rotate方法设置旋转的偏移量;
      (代码和注释)
    
  • rotation与localRotation的区别:
  • 在检视面板中,Transform组建的Rotation指的是物体的localRotation。

朝向目标

  • 使用LookAt方法
      (代码和注释)
    
  • 有时我们要朝向目标时的旋转角度可以使用Quaternion.LookRotation()
      (代码和注释)
    
  • 两个方法给的参数xxx

围绕目标旋转

  • 围绕目标旋转是一个仿射变化。
  • 实现的函数、参数的意义(注明坐标系)。
  • 目标的位置是变化时,如果想保持相对位置不变,可以将物体设置为目标的子物体。
  • Demo 太阳系(最好有材质和截图)

    
    
    
     
    
  • 旋转指定角度
  • 朝向指定方向

旋转朝向

  • Unity中用四元数表示旋转
  • 根据欧拉角得到旋转
  • 根据角轴对得到旋转
  • 根据方向向量得到旋转

不停旋转