| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 游戏开发 -> Unity Quaternion -> 正文阅读 |
|
[游戏开发]Unity Quaternion |
Quaternion 类的属性 eulerAngles? 欧拉角 Quaternion 类的实例方法 1、SetFromToRotion 函数 2、SetLookRotation 函数 3、ToAngleAxis 函数 Quaternion 类的静态方法 1、Angle方法 2、Dot方法 3、Euler方法 4、FromToRotation方法 5、Inverse方法 6、Lerp方法 7、LookRotation方法 8、RotateToWards方法 9、Slerp方法 Quaternion 类的实例方法 SetFromToRotion 函数 1、public void SetFromToRotion(Vector3 fromDirection, Vector3 toDirection); 可以创建一个从向量向量toDirection的旋转。(当fromDirection 和 toDirection 不能为Vector3.zero) 代码示例:?m_q.eulerAngles = (45.0, 0.0, 0.0)
SetLookRotation 函数 1、public void SetLookRotation(Vector3 v1); 2、public void SetLookRotation(Vector3 v1, Vector3 v2); transform.forward 方向与v1方向相同,transform.right 垂直于由 Vector3.zer0、v1和v2这3点构成的平面。v2决定了transform.up的朝向,因为当transform.forward和transform.right方向确定后,transform.up的方向总会与V2的方向的夹角小于或等于90度。当V1为Vector3.zero时,方法失效。 代码示例
ToAngleAxis 函数 1、public void ToAngleAxis(out float angle,out Vector3 axis); 参数angle为旋转角,参数axis为轴向量。 该函数可以实现将GameObject对象的rotation从Quaternion.identity状态变换到当前状态,只需要将GameObject对象绕着axis轴(世界坐标系)旋转angle角度即可。 代码示例
? Quaternion 类的静态方法 Angle 函数 1、public static float Angle(Quaternion a,Quaternion b); 该方法可以计算两个旋转状态a达到b时需要旋转的最小夹角。 代码示例
? ? Dot 函数 1、public static float Dot(Quaternion a,Quaternion b); 该方法可以根据点乘的结果,判断a和b对应欧拉角的关系。 例如有两个Quaternion实例q1(x1,y1,z1,w1)和q2(x2,y2,z2,w2),则float f = Quaternion.Dot(q1,q2);即f = x1*x2+y1*y2+z1*z2+w1*w2,结果值f的范围为[-1,1]。当f=+(-)1时,q1和q2对应的欧拉角是相等的,即旋转状态是一致的。特别地,当f = -1时,说明其中一个rotation比另外一个rotation多旋转了360°。 、Euler方法、FromToRotation方法、Inverse方法、Lerp方法、LookRotation方法、RotateToWards方法和Slerp方法。关于静态的方法的使用就是直接用类名调用其静态方法,例如Quaternion.Angle(q1,q2);下面对这些静态方法做下分析。 |
|
|
上一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/28 2:41:50- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |