3D数学 学习笔记(1) 向量、坐标系
参考书籍:
《3D数学基础:图形与游戏开发》
《Unity Shader 入门精要》
左/右手坐标系

Unity中坐标系选择

左/右手法则
常用于判断法向量、网格的正面等。

- CW (clockwise),顺时针。
- CCW (counterclockwise),逆时针。
点
只有位置。没有大小和方向。
向量
只有方向和大小。没有位置,如位移、速度。
将向量表示为位移序列

- AABB (axially aligned bounding box),轴对齐包围盒,及上图向量作为其体对角线。
向量点乘
a·b = |a||b|cosθ
- 通过结果大小判断两个向量方向。如碰撞检测、背面剔除等。

- 计算向量的投影。如图形投影到相机屏幕。


计算公式:
但一般投影会使用投影到平面的单位向量,及a的模为1。

向量叉乘

-
计算两个向量所在面的法向量。(判断方向必须让a的头和b的尾相接,且用左手法则。)

-
计算平行四边形(三角形)面积。


上图是计算平行四边型的方法。同理可计算ab两向量加上两个头部连接的边形成的三角形面积,及平行四边形的一半。
点乘和叉乘混合运算
a·b×c = a·(b×c)
因为点乘返回标量,标量不能与向量叉乘,所以(a·b)×c没有定义。
(a×b)·c= a·(b×c)
常用向量公式表


本文档详细介绍了3D数学的基础概念,包括向量、坐标系等知识点,并讲解了向量点乘、叉乘及其应用,例如计算法向量、进行背面剔除等。适合初学者了解3D图形和游戏开发的数学基础。
982

被折叠的 条评论
为什么被折叠?



