当欧拉角为负值的时候,会变得很混乱,很不受人控制,所以说我们要在他变成-值之后将其+360度
void Rotate(float angle)
{
Vector3 rotate = transform.rotation.eulerAngles;
rotate.z = rotate.z - angle;
if (rotate.z < 0)
{
rotate.z += 360;
}
if((rotate.z>300 && rotate.z<360) ||( rotate.z>=0&&rotate.z<60))
transform.rotation = Quaternion.Euler(rotate);
Debug.Log(transform.rotation.eulerAngles);
}
限制物体在-60度(300度到360度) 到 60度之间(0 -- 60度)