四元数quaternion
四元数的简单方法运用
四元数在Unity3D中的作用就是拿来表示旋转。
AngleAxis
创建一个旋转,绕着某个轴旋转,返回结果是一个四元数。
跟ToAngleAxis实现的是相反的功能。
Angle
返回两个旋转值(四元数)之间的角度,返回值是float类型的角度值。
(不知道这个值算出来后有什么用)
Dot
点乘,我也不太理解其意义。
参见
eulerAngles
返回表示旋转的欧拉角度(Vector3 即3个值)
(如果调用的是某个物体,则表示该物体当前位置是从原始位置怎么旋转过来的,
其实就是Inspector里的Rotation的3个值)
Euler
感觉跟eulerAngles是相反的操作(经测试,确实是)
输入的是欧拉角的3个值,返回的是一个旋转(四元数)
FromToRotation
参数是两个Direction(Vector3),返回一个Quaternion
我觉得主要是用在要把A物体的朝向转成跟B物体的朝向一样时所需要的旋转值(Quaternion)
然后再调用Transform.Rotate就可以把A旋转成跟B一样了。
identity
可以理解为单位四元数
Inverse
就是一个旋转的反旋转,其实就是把刚才的那个旋转转回去。
Lerp
插值,可以理解为可以把一个物体的朝向转向跟另一个物体一样,跟时间配合可以慢慢地旋转。
LookRotation
可以让A物体一直朝向B物体。
参照下面这篇文章的做法,导入ThirdPersonController
http://blog.csdn.net/lijing_hi/article/details/7272089
Quaternion
构造函数,参数是4个float值
RotateTowards
跟Slerp类似
SetFromToRotation
跟FromToRotation功能一样,只是调用方式不一样。
SetLookRotation
跟LookRotation功能一样,只是调用方式不一样。
Slerp
旋转一个角度从from到to。
this[int index]
像数组那样调用x, y, z, w,感觉还不如直接用.x来调用。
可能是为了循环方便。
ToAngleAxis
把一个rotation 转成 angle-axis 形式。跟AngleAxis实现的是相反的功能。
用引用的方式传入 angle和 axis 。
这跟transform.localEulerAngles很类似。
输入:transform.localEulerAngles=(0,0,0);
输出:angle=0, axis=(1,0,0);
输入:transform.localEulerAngles=(0,90,0);
输出:angle=90,axis=(0,1,0);
输入:transform.localEulerAngles=(270,0,0);
输出:angle=90,axis=(-1,0,0)
ToString
格式化成一个字符串
参考:http://blog.csdn.net/yustarg/article/details/8623687
四元数quaternion的更多相关文章
- 学习和研究下unity3d的四元数 Quaternion
学习和研究下unity3d的四元数 Quaternion 今天准备学习和研究下unity3d的四元数 Quaternion 四元数在电脑图形学中用于表示物体的旋转,在unity中由x,y,z,w 表示 ...
- unity3d的四元数 Quaternion
原地址:http://www.cnblogs.com/88999660/archive/2013/04/02/2995074.html 今天准备学习和研究下unity3d的四元数 Quaternion ...
- 四元数Quaternion的基本运算
技术背景 在前面一篇文章中我们介绍了欧拉角死锁问题的一些产生背景,还有基于四元数的求解方案.四元数这个概念虽然重要,但是很少会在通识教育课程中涉及到,更多的是一些图形学或者是工程学当中才会进行讲解.本 ...
- [Unity Quaternion]四元数Quaternion的计算方式
什么是Quaternion四元数 1843年,William Rowan Hamilton发明了四元数,但直到1985年才有一个叫Ken Shoemake的人将四元数引入计算机图形学处理领域.四元数在 ...
- 【Unity编程】四元数(Quaternion)与欧拉角
版权声明:本文为博主原创文章,欢迎转载.请保留博主链接:http://blog.csdn.net/andrewfan 欧拉旋转.四元数.矩阵旋转之间的差异 除了欧拉旋转以外,还有两种表示旋转的方式:矩 ...
- 四元数 Quaternion
最近在重写自己游戏引擎的场景管理模块,重温了一下有关四元数的一些知识,在此做一下简单的笔记. 四元数可以用来准确地描述三维矢量的旋转,并且可以有效地表达多个旋转操作的叠加,因此在三维游戏引擎的场景管理 ...
- 【转】【Unity】四元数(Quaternion)和旋转
http://blog.csdn.net/candycat1992/article/details/41254799
- 四元数和旋转(Quaternion & rotation)
四元数和旋转(Quaternion & rotation) 本篇文章主要讲述3D空间中的旋转和四元数之间的关系.其中会涉及到矩阵.向量运算,旋转矩阵,四元数,旋转的四元数表示,四元数表示的旋转 ...
- 【Unity编程】Unity中关于四元数的API详解
本文为博主原创文章,欢迎转载,请保留出处:http://blog.csdn.net/andrewfan Unity中关于四元数的API详解 Quaternion类 Quaternion(四元数)用于计 ...
随机推荐
- 使用Squirrel创建基于Electron开发的Windows 应用安装包
我们把自己开发的Electron应用发布之前,需要把app打包成简单的安装包,这样app更容易被获取,以此来发布我们的应用.我们可以参考Wix或其他的安装程序,但是对于Electron应用更好的打包程 ...
- jquery 实现重复点击一个元素时不重复执行效果
jquery 实现重复点击一个元素时不重复执行效果 这需要用到jquery的stop方法 实例 停止当前正在运行的动画: $("#stop").click(function(){ ...
- Spring整合JUnit框架进行单元测试代码使用详解
一.Spring提供的JUnit框架扩展: 1. AbstractSpringContextTests:spring中使用spring上下文测试的Junit扩展类,我们一般不会使用这个类来进行单元 ...
- 在Web中使用Windows控件
版权声明:本文为博主原创文章,未经博主允许不得转载. 目录(?)[+] 将Net控件转化为ActiveX控件 1GUID 2实现IObjectSafety接口 3程序集设定 制作安装程序 Web集 ...
- RealTimePerformanceDemoView
using System;using System.Diagnostics;using System.Timers;using System.Windows;using System.Windows. ...
- Linux系统挂载数据盘
参考:http://help.aliyun.com/knowledge_detail/5974154.html?spm=5176.788314850.3.2.hUqwXo 1.在阿里云上购买了服务器, ...
- java中abstract详解
Abstract(抽象)可以修饰类.方法 如果将一个类设置为abstract,则此类必须被继承使用.此类不可生成对象,必须被继承使用. Abstract可以将子类的共性最大限度的抽取出来,放在父类中, ...
- C++设计模式-Prototype原型模式
作用: 用原型实例指定创建对象的种类,并且通过拷贝这些原型创建新的对象. Prototype模式提供了一个通过已存在对象进行新对象创建的接口(Clone), Clone()实现和具体的语言相关,在C+ ...
- 关于python中文件导入的若干问题
__init__文件 同一级目录下直接import导入就可以了,如果是在不同的目录下面被导入文件的文件夹下面必须有__init__.py文件,即使这个文件是空的也可以.当然这个文件也可以初始一些数据 ...
- iOS 为iPhone和iPad创建不同的storyboard
复制Main.storyboard,重命名为Main_iPad.storyboard 在info.plist文件中添加 Main storyboard file base name (iPad) -- ...