VectorUtils.cs 728 B

1234567891011121314151617181920
  1. namespace UnityEngine
  2. {
  3. internal static class VectorUtils
  4. {
  5. /// <summary>
  6. /// 向量按Y轴向左旋转
  7. /// </summary>
  8. /// <param name="vector"></param>
  9. /// <param name="degrees">正值代表向左、逆时针</param>
  10. /// <returns></returns>
  11. public static Vector3 RotateLeft(this Vector3 vector, float degrees)
  12. {
  13. //创建一个表示Y轴旋转的四元数,正值代表向左旋转(逆时针)
  14. // 飞龙的地图是沿着Y轴向上的,角度需要改成z轴
  15. Quaternion rotation = Quaternion.Euler(0, 0, degrees);
  16. //使用四元数旋转向量
  17. return rotation * vector;
  18. }
  19. }
  20. }