PluginSDK中的Quaternion4d类可能是感觉Microsoft.DirectX. Quaternion类不太实用或不够用,自己有重新写的。四元数是英国数学家哈密顿(W.R.Hamilton)在1843年发现的,由于矩阵论的不断丰富和不断完善,人们更乐意采用矩阵来解决实际工程中的问题,这...
本文对Unity第一视角MouseLook源码继续深入分析,并引用一些四元数的数学概念来阐述代码工作原理。...
分类:
编程语言 时间:
2015-05-20 16:25:26
阅读次数:
304
四元数是由爱尔兰数学家威廉·卢云·哈密顿在1843年发现的数学概念。四元数的乘法不符合交换律。明确地说,四元数是复数的不可交换延伸。如把四元数的集合考虑成多维实数空间的话,四元数就代表着一个四维空间,相对于复数为二维空间。基础定义复数是由实数加上元素i组成,其中。相似地,四元数都是由实数加上三个元素...
分类:
其他好文 时间:
2015-04-29 19:32:41
阅读次数:
157
官网API文档:
file:///Applications/Unity/Unity.app/Contents/Documentation/html/en/ScriptReference/Quaternion.htmlQuaternion的意思是四元数,用于代表旋转。它们是紧致的,不会产生万向节死锁并且能够很容易被插值。Unity内使用Quaternion表示所有的旋转动作。(万向节是什么可以百度下...
分类:
编程语言 时间:
2015-04-23 20:01:39
阅读次数:
407
四元数产生于1843年,是复数的一个扩展,所以里面包含了一些复数的运算。直到1985年才在图形学中使用。 四元数的优势是,相对与矩阵和欧拉角,四元数更直观和方便。四元数还可以用作某些方向上的插值,而欧拉角可能并不能很好的完成。 四元数使用四个数字表示。通常,前三个和旋转的轴密切相关,最后一个...
分类:
其他好文 时间:
2015-04-01 01:45:42
阅读次数:
179
首先是被雨松大大唤醒的数学知识,代码参考自这里:
using UnityEngine;
using System.Collections;
public class TestRot : MonoBehaviour {
public Transform target;
void Start()
{
//四元数rotation的一些运算
...
分类:
编程语言 时间:
2015-03-29 18:08:56
阅读次数:
363
Vector3 tmpvc;1. tmpvc = Quaternion.Euler (new Vector3 (0, 30, 0)) * new Vector3 (0, 0, 1);2. tmpvc = new Vector3 (sin (30.0f), 0, cos (30.0f)); ...
分类:
编程语言 时间:
2015-02-09 17:37:40
阅读次数:
175
其实在前面的文章中我觉得应该给大家介绍一下。我们所讨论的姿态问题是几何中的定向问题,在三维空间中我们如果需要知道一个刚体的具体方位,可以选定一个点这个点相对于刚体本身不会动,但是这不足以了解运动的全貌,我们还需要一个旋转角度来确定。 以上的内容可以这样想象,在我们研究物理问题中常常采用质点的方法。....
分类:
其他好文 时间:
2015-01-31 01:38:25
阅读次数:
160
欧拉角(EulerAngle)、矩阵(matrix)、四元数(Quaternion)旋转矩阵、欧拉角、四元数主要用于:向量的旋转、坐标系之间的转换、角位移计算、方位的平滑插值计算四元数的乘法意义:Q = Q1 * Q2表示的是:Q先做Q2的旋转,再做Q1的旋转的结果,而且多个四元数的旋转也是要以合并...
分类:
其他好文 时间:
2015-01-31 00:13:38
阅读次数:
303