对Unity3D 中Quaternion一些整理

这篇博客主要整理了Unity3D中的Quaternion四元数概念及其应用,包括使用Quaternion.AngleAxis进行角轴旋转,使用Quaternion.Lerp进行插值运算,以及如何通过Quaternion.Slerp平滑旋转物体,同时介绍了Quaternion.LookRotation实现自由视角调整的方法。
摘要由CSDN通过智能技术生成

Quaternion 中文是四元数。记得计算机图形学中,在X,Y,Z的基础上添加了新的一个W。这样算是所谓的四元数。具体的解释可以参考,百科等。

Quaternion.AngleAxis ,AngleAxis角轴

  绕Axis轴,旋转Angle角度。例如:绕Y轴旋转30度。

transform.rotation = Quaternion.AngleAxis(30,Vector3.up);//Vector3.up代表的是Y轴正方向。

Quaternion.Angle  返回的是 a 和 b 之间的角度。

float angle = Quaternion.Angle(transform.rotation,target.rotation);//返回的是transform和target两个之间的角度

Quaternion.Dot 两个旋转之间的点乘。点乘即所谓的内积,学过数学的都知道内积。简单点就是对应坐标相乘在相加。
print(Quaternion.Dot((transform.rotation,target.rotation));

Quaternion.eularAngle 返回表示旋转的欧拉角度。绕z轴旋转euler.z度,绕x轴旋转euler.x度,绕y轴旋转euler.y度。这样的顺序,就是绕轴旋转的角度
 var rotation = Quaternion.identity;
        rotation.eulerAngles = new Vector3(0,30,0) ;

Quaternion
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值