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);
}
本文介绍了如何在Unity中使用Quaternion.Euler()将欧拉角转换为四元数来设置物体旋转,以及利用Quaternion.LookRotation()使物体面向特定目标,并通过Slerp实现平滑过渡。
4730

被折叠的 条评论
为什么被折叠?



