Quaternion类
Euler
public static Quaternion Euler(Vector3 euler);
public class ExampleClass : MonoBehaviour {public Quaternion rotation = Quaternion.Euler(0, 30, 0);
}public class ExampleClass : MonoBehaviour {public Quaternion rotation = Quaternion.Euler(new Vector3(0, 30, 0));
}
ToAngleAxis 返回物体的旋转角度信息
AngleAxis 创建围绕轴旋转某个角度的四元数
public static Quaternion AngleAxis(float angle, Vector3 axis);
public class ToAngleAxis : MonoBehaviour {// Use this for initializationprivate float angle = 0.0F;private Vector3 axis = Vector3.zero;public GameObject a;public GameObject b;void Start () {a.transform.rotation.ToAngleAxis(out angle, out axis);b.transform.rotation = Quaternion.AngleAxis(angle, axis);}
}
SetLookRotation 设置Quaternion实例的朝向
public class SetLookRotation: MonoBehaviour {public Transform target;void Start() {Vector3 relativePos = target.position - transform.position;Quaternion rotation = Quaternion.identity;rotation.SetLookRotation(relativePos,transform.up);transform.rotation = rotation;}
}
LookRotation 设置Quaternion实例的朝向
public class LookRotation : MonoBehaviour {public Transform target;void Start() {Vector3 relativePos = target.position - transform.position;Quaternion rotation = Quaternion.LookRotation(relativePos);transform.rotation = rotation;}
}
效果
SetFromToRotation
public void SetFromToRotation(Vector3 fromDirection, Vector3 toDirection);
FromToRotation
Lerp 线性插值
public static Quaternion Lerp(Quaternion a, Quaternion b, float t);
public class t_Quaternion_Slerp : MonoBehaviour {public Transform to;public float speed = 0.1F;Vector3 targetVector;Quaternion targetQuaternion = Quaternion.identity;void Start() {targetVector = to.position - transform.position;targetQuaternion = Quaternion.LookRotation(targetVector);}void Update(){transform.rotation = Quaternion.Lerp(transform.rotation, targetQuaternion,Time.deltaTime);}
}
效果:
功能:返回从a到b的球面插值
Quaternion类相关推荐
- 【Unity】6.8 Quaternion类(四元数)
分类:Unity.C#.VS2015 创建日期:2016-04-20 一.四元数的概念 四元数包含一个标量分量和-个三维向量分量,四元数Q可以记作: Q=[w,(x,y,z)] 在3D数学中使用单位四 ...
- Unity3D - 详解Quaternion类
一.简介 Quaternion又称四元数,由x,y,z和w这四个分量组成,是由爱尔兰数学家威廉·卢云·哈密顿在1843年发现的数学概念.四元数的乘法不符合交换律.从明确地角度而言,四元数是复数的不可交 ...
- Unity3D - 详解Quaternion类[转载]
一.简介 Quaternion又称四元数,由x,y,z和w这四个分量组成,是由爱尔兰数学家威廉·卢云·哈密顿在1843年发现的数学概念.四元数的乘法不符合交换律.从明确地角度而言,四元数是复数的不可交 ...
- Quaternion类之美
Quaternion类 Quaternion类又称四元数,由x, y, z, w 4个分量组成,属于struct类型. Unity中用其存储和表示对象的旋转角度 Quaternion的变换较为复杂,对 ...
- 用C++实现一个Quaternion类
提要 四元素是游戏开发中常用的用于处理旋转的数学工具,下面就用C++来实现一个四元素类.参考Unity中四元素的接口. 如果没有看之前的 彻底搞懂四元数, 建议先看一下. 代码清单 Quaternio ...
- Unity API常用方法和类
什么是API?--预先设置好的编程接口 事件函数及常用脚本 事件函数的执行顺序 具体可参考:docs.unity.cn/cn/current/Manual/ExecutionOrder.html *函 ...
- 《UnityAPI.Quaternion四元数》(Yanlz+Unity+SteamVR+云技术+5G+AI+VR云游戏+Quaternion+Angle+Dot+Euler+立钻哥哥++OK++)
<UnityAPI.Quaternion四元数> 版本 作者 参与者 完成日期 备注 UnityAPI_Quaternion_V01_1.0 严立钻 2020.07.10 #<Uni ...
- Unity API常用方法和类的解析
一.事件函数执行的先后顺序 FixedUpdate每秒执行固定次数,应该将处理跟物理相关的运动的代码放在FixedUpdate中. Update和LateUpdate跟硬件和代码性能有关,每秒执行次数 ...
- Unity中的一些重要函数和类的解析
下面的这些函数在Unity3d程序开发中具有很重要的作用. Update 当MonoBehaviour启用时,其Update在每一帧被调用. LateUpdate 当Behaviour启用时,其Lat ...
最新文章
- 搭建服务器环境 安装jdk、mysql、Tomcat 以及配置https 记录
- 用createrepo命令创建自己的yum源
- 重装MAC系统 “安装器有效负载签名检查失败” 解决方法
- 使用OpenCV计算图像的轮廓矩的代码
- cisco路由器基本命令配置
- 鸟哥的Linux私房菜(基础篇)- 第十五章、磁碟配额(Quota)与进阶文件系统管理
- 数据结构---邻接矩阵的DFS
- MongoDB性能测试
- 乔安监控云存储能存多长时间_干货 | 监控磁盘阵列知识介绍,不了解还不来看看?...
- python核心编程第六章练习6-12
- 关于浏览器中copy, cut, paste捕获的总结
- “颠覆”——物联网 + 大数据 + 云计算+ 网络互连
- 坦然面对:应对前端疲劳
- 西门子博途TIA PORTAL硬件目录中无法找到CPU的固件版本时,如何下载项目数据?
- python是跨平台语言吗_python可以跨平台么
- 阿里云香港服务器带宽太贵怎么办?香港节点全球CDN加速你值得拥有
- 【ppt入门教程】PowerPoint课件发布全攻略
- 华为手机桌面角标开发
- 苏、陕、宁、浙四省主动安全防控/智能视频监控预警设备平台一览
- 多路温度采集控制系统(2)需求分析
热门文章
- raid技术基本原理
- 在linux下怎么打包直接运行的node-webkit桌面应用
- 一键卸载cad,强力卸载cad,强力删除autodesk,完美卸载max,彻底卸载revit,彻底删除autodesk的任何软件
- c语言解决方程的论文,c语言编程求解线性方程组论文1.doc
- java搭建o2o平台_java版 spring cloud+mybatis 构建 b2b2c o2o 多租户电子商务平台
- [原创]Fashion汽车定位器拆解
- 程序设计综合实践 2.1
- 大促活动前团购系统流量预算和容量评估
- 身份证号码正则表达式详解
- SSR 它到底香不香?细数 SSR 的利与弊