关于这一章节,还有很多知识点没看懂,只能得需要用到的时候,再拿出来复习了。
笛卡尔坐标
- 坐标系的区分:拇指代表+x轴,食指代表+y轴,中指代表+z轴,如果左手满足添加,就是左手坐标系,反之,就是右手坐标系。
- 左/右手法则:举起对应的手,竖起大拇指,大拇指指向要旋转的轴的正方向,四个手指弯曲的方向就是正方向。
- Unity的观察空间使用的是右手坐标系,而模型空间和世界空间使用的是左手坐标系。
点和矢量
- 矢量:包含模(长度)和方向
- 点积的一个几何意义–投影:
a·b > 0 方向相同(夹角大于90度)
a·b = 0 方向垂直(夹角等于90度)
a·b < 0 方向相反(夹角小于90度)
矩阵的几何意义:变化
- 通过齐次坐标同一解决:缩放、旋转、平移问题:p63
- 约定变化顺序:先缩放、再旋转、后平移
坐标空间
- 模型空间:也称局部空间。是和某个模型或对象相关的,模型空间的原点由美术人员在建模软件里确定好。
- 世界空间:在Unity中,使用左手坐标系,Unity会定义出一个唯一的世界空间及原点。
- 观察空间:也称摄像机空间,原点即是摄像机的位置,但在Unity,采用右手坐标系。
- 裁剪空间:也称齐次裁剪空间,该空间包含摄像机所看到的视锥体空间,该空间是个三维区域。
- 屏幕空间:即真正投影到屏幕上的空间,是二维的。
- 联系:
(1)模型空间 — 模型变化 —> 世界空间
(2)世界空间 — 观察变化 —> 观察空间
(3)观察空间 — 投影变化 —> 裁剪空间
(4)裁剪空间 — 屏幕映射 —> 屏幕空间
《Unity Shader 入门精要》冯乐乐