前言
重要矩阵: 模型(Model) 观察(View) 投影(Projection) 三个矩阵
一 坐标系统投影流程
上图讲解:
顶点坐标起始于局部空间(Local Space)
之后变化为世界坐标(World Coordinate)->观察坐标(View Coordinate) -> 裁剪坐标(Clip Coordinate)
最后变为屏幕坐标(Screen Coordinate)
V c l i p = M p r o j e c t i o n ∗ M v i e w ∗ M m o d e l ∗ V l o c a l V _{clip} = M _{projection} * M _{view} * M _{model} *V _{local} Vclip=Mprojection∗Mview∗Mmodel∗Vlocal
二 解析坐标产生
![]() 局部坐标系点 每一行=3个坐标+2个材质坐标 | ![]() | ![]() 这些坐标可以通过建模软件实现 |
![]() | ![]() | 把物体拿到大坐标系了 M m o d e l = M T M _{model} = M _T Mmodel=MT 改变基底:仅移动 |
M R ∗ M T = M m o d e l M _R * M _T = M _{model} MR∗MT=Mmodel | ![]() |
M
m
o
d
e
l
=
M
R
∗
M
T
M _{model} = M _R * M _T
Mmodel=MR∗MT 改变基底: 既有移动也有旋转 |
![]() | ![]() 红色的是摄像机 |
M
v
i
e
w
M _{view}
Mview 实际上没有相机概念,仍然是让整个世界转了一下 把相机所在位置当做了新的世界原点坐标系 |
![]() 因为投影时,前后有面,会裁掉一部分 所以得到的叫做clip coordinate | ![]() | 如果后面比前面的大,那么就是透视投影 |