Quaternion.Euler() 将欧拉角转换为四元数
//设置物体旋转
//直接给欧拉角赋值
transform.eulerAngles = new Vector3(45, 45, 45);
//将欧拉角转换为四元素,赋值给rotation
transform.rotation = Quaternion.Euler(new Vector3(45,45,45));
Quaternion.LookRotation()让物体面朝目标物体
public Transform target;//要面向的目标物体
public float speed = 1f;
void Update()
{
//得到一个由当前物体指向目标物体的向量
Vector3 direction = target.position - transform.position;
direction.y = 0;
Quaternion targetRotation = Quaternion.LookRotation(direction, Vector3.up);
//让旋转有一个缓动效果
//使用Lerp
//transform.rotation = Quaternion.Lerp(transform.rotation,
// targetRotation, Time.deltaTime * speed);
//使用Slerp
transform.rotation = Quaternion.Slerp(transform.rotation,
targetRotation, Time.deltaTime * speed);
}