模型坐标 → 世界坐标 → 视图坐标 → 裁剪坐标 → 屏幕坐标

        在计算机图形学中,物体从模型空间到屏幕空间的坐标变换是一个多步骤的过程,涉及多个坐标系的转换。

一、数学变换

1. 模型坐标 → 世界坐标(Model Space → World Space)

目的:将物体从自身的局部坐标系(模型空间)转换到全局的世界坐标系。
变换矩阵:模型矩阵(Model Matrix,简称 M_model
操作

  • 通过平移(Translation)、旋转(Rotation)、缩放(Scale)等变换组合,将模型顶点从局部坐标转换为世界坐标。

  • 例如:一个顶点在模型坐标系中的坐标为 (x_model, y_model, z_model),变换后为世界坐标 (x_world, y_world, z_world)

公式

2. 世界坐标 → 视图坐标(World Space → View Space)

目的:将世界坐标系中的点转换到摄像机的视角坐标系(视图空间)。
变换矩阵:视图矩阵(View Matrix,简称 M_view
操作

  • 通过摄像机的位置、朝向(LookAt)和上方向(Up Vector)构建视图矩阵。

  • 本质是将世界坐标系原点移动到摄像机位置,并旋转坐标系使其与摄像机对齐。

公式

3. 视图坐标 → 裁剪坐标(View Space → Clip Space)

目的:将视图空间中的点转换到裁剪空间(齐次坐标),便于后续的透视除法。
变换矩阵:投影矩阵(Projection Matrix,简称 M_proj
操作

  • 透视投影(Perspective Projection)或正交投影(Orthographic Projection)将视锥体映射到标准立方体(NDC,范围为 [-1, 1])。

  • 透视投影会引入透视除法(w 分量存储深度信息)。

公式

4. 裁剪坐标 → 标准化设备坐标(Clip Space → NDC)

目的:通过透视除法将齐次坐标转换为标准化设备坐标(NDC)。
操作

  • 将裁剪坐标的 (x, y, z) 分量除以 w 分量(透视除法)。

  • NDC 的范围为 [-1, 1],超出范围的顶点会被裁剪。

公式

5. NDC → 屏幕坐标(NDC → Screen Space)

目的:将 NDC 映射到屏幕像素坐标。
操作

  • 通过视口变换(View

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

byxdaz

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值