1:键盘点击左右箭头,旋转transform固定角度
2:限制transform的旋转角度与目标角度的夹角小于90度
using UnityEngine;
using System.Collections;
public class movetest : MonoBehaviour
{
Quaternion wantedrotation;
Quaternion startrotation;
void Start()
{
wantedRotation = transform.TransformDirection(Vector3.forward);
startRotation = transform.TransformDirection(Vector3.forward);
}
void Update()
{
if( Input.GetKeyDown(KeyCode.LeftArrow))
{
wantedrotation = transform.rotation* Quaternion.Euler(0, -20, 0);
}
if(Input.GetKeyDown(KeyCode.RightArrow))
{
wantedrotation = transform.rotation* Quaternion.Euler(0, 20, 0);
}
if (Quaternion.Angle (wantedrotation, startrotation) < 90)
transform.rotation=Quaternion.Slerp (transform.rotation, wantedrotation, Time.deltaTime*10.0f);
}
}