1. 左右手坐标系
Unity使用的是左手坐标系,但是它的观察空间使用的是右手坐标系。
(Unity场景中) (Unity视图空间)
2. 向量(vector)
2.1. 向量和标量(scalar)乘法:
2.2. 向量加减法:
2.3. 向量的模(magnitude)
2.4. 向量的点积(dot product)或内积(inner product)
几何意义:
性质:
a. 交换率: 
b. 结合标量乘法: 
c. 结合律: 
d. 点积自身为模的平方: 
2.5. 向量的叉积(cross product)或外积(outer product)
几何意义:两个向量进行叉积会得到一个同时垂直于这两个向量的新向量,向量方向根据左右手法则确定(根据所在的是左手还是右手坐标系)。
性质:
a. 反交换律: 
3. 矩阵(matrix)
3.1 与标量相乘
3.2 与矩阵相乘
3.3. 性质
a. 不满足交换率
b. 满足结合律: (AB)C = A(BC)
3.4.1 方块矩阵、方阵(square matrix)
3.4.2 对角矩阵(diagonal matrix)
3.4.3 单位矩阵(identity matrix)
一个特殊的对角矩阵。
3.4 转置矩阵(transposed matrix)
翻转原矩阵,原矩阵第i行变成了第i列,第j列变成了第j行。
性质:
a. 
b. 
4.5. 逆矩阵(inverse matrix)
不是所有的矩阵都可逆,如果一个方阵的行列式(determinant)不为0,那么它是可逆的。逆矩阵可以做针对于原矩阵的反向变换。
可逆(invertible)、非奇异的(nonsingular)。不可逆(noninvertible)、奇异的(singular)。
性质:
a. 逆矩阵的逆矩阵是原矩阵本身:
b. 单位矩阵的逆矩阵是它本身:

c. 转置矩阵的逆矩阵是逆矩阵的转置:
d. 
4.6. 正交矩阵(orthogonal matrix)
如果一个方阵M和它的转置矩阵的乘积是单位矩阵的话,我们就说M是正交的。
性质:
a. 如果一个矩阵是正交的,那么它的转置矩阵和逆矩阵是一样的:
b. 如果一个矩阵是正交的,它的每一行都是单位向量且互相垂直(同样适用于每一列,因为如果M是正交矩阵的话,它的转置也是正交的)。
c. 只包含旋转的变换矩阵是正交矩阵。
4. 变换(transform)
4.1. 线性变换(linear transform)
指那些可以保留矢量加和标量乘的变换,旋转(rotate)、缩放(scale)、错切(shear)、镜像(mirroring、reflection)、正交投影(orthographic
projection)等。
平移(translation)不是线性变换。
4.2. 仿射变换(affine transform)
合并线性变换和平移变换的变换类型,需要使用4x4的矩阵来表示,为此,我们需要把矢量扩展到四维空间下,这就是齐次空间坐标(homogeneous space)。
4.3. 常用变换矩阵
平移变换(translation )
旋转变换(rotate)

放缩变换(scale)

透视变换(perspective projection transformation)
坐标系变换,存在2个空间,P父空间,C子空间,C的3个坐标轴在P下的表示为Xc、Yc和Zc,C的原点在P下的表示为Oc,点A在C下的坐标为Ac(a,b,c)。
如果变换向量,可以用3x3矩阵表示:
再如果Mc-p是正交矩阵,则
5. 法线变换
- 需要用变换顶点的变换矩阵的逆转置矩阵来变换法线,才能确保法线的垂直性。
- 如果变换矩阵是正交矩阵(只包含旋转变换的矩阵是正交矩阵),可以用变换顶点的矩阵变换法线。
- 如果变换只包含旋转和统一缩放,可以使用
来变换。