Quaternion 中文是四元数。记得计算机图形学中,在X,Y,Z的基础上添加了新的一个W。这样算是所谓的四元数。具体的解释可以参考,百科等。
Quaternion.AngleAxis ,AngleAxis角轴
绕Axis轴,旋转Angle角度。例如:绕Y轴旋转30度。
transform.rotation = Quaternion.AngleAxis(30,Vector3.up);//Vector3.up代表的是Y轴正方向。
float angle = Quaternion.Angle(transform.rotation,target.rotation);//返回的是transform和target两个之间的角度
print(Quaternion.Dot((transform.rotation,target.rotation));
var rotation = Quaternion.identity;
rotation.eulerAngles = new Vector3(0,30,0) ;
Quaternion.Euler(Vector3(0,30,0));
Quaternion.FromToRotation 旋转一个变换的其中一个轴,即旋转一个轴到另一个轴的位置。
Quaternion.identity. 无旋转。
Quaternion.Lerp(from,to,float t).通过t值from 向to之间插值,并且规范化结果。
transform.rotation = Quaternion.Lerp(from.rotationg,to.rotation,Time.deltatime);
transform.rotation = Quaternion.Slerp(from.rotation,to.rotation,Time.delttime);
Quaternion.LookRotation 注释旋转 创建一个旋转,沿着forward(z轴)并且头部沿着upwards(y轴)的约束注视。也就是建丽一个旋转,使z轴朝向view,y轴朝向up
transform.rotation = Quaternion.LookRotation(target.position-transform.position);