求某一向量与Vector3.forward所成的角度,一般用于求一个物体的绕Y轴的旋转角度
/// <summary>
/// 求某一向量与Vector3.Forward所称的角度——一般用于求一个物体的绕Y轴的旋转角度
/// </summary>
/// <returns></returns>
public float AngleBetweenForward2Vector(Vector3 vectorAim)
{
vectorAim.y = 0;
float angleBetweenForward2Vector = 0;
if (vectorAim.x>0)
{
angleBetweenForward2Vector = Vector3.Angle(Vector3.forward, vectorAim);
}
else
{
angleBetweenForward2Vector = 360 - Vector3.Angle(Vector3.forward, vectorAim);
}
return angleBetweenForward2Vector;
}
用法:float angle=AngleBetweenForward2Vector(vectorStart2End);
transform.localEulerAngles = new Vector3(0, angle, 0);