3D 场景中的相机并不神秘:它会反复改变一个点的描述方式。在最简单的相机相对坐标系中,点 `(x, y, z)` 会在屏幕上变成 `(x/z, y/z)`。如果 `y` 表示向上,`z` 表示向前,那么增大 `z` 会缩小两个屏幕坐标,因此物体看起来会接近消失点。例如,`(2, 1, 2)` 投影为 `(1, 0.5)`,而 `(2, 1, 8)` 投影为 `(0.25, 0.125)`。这就是 Gabriel Oc 文章中互动示例背后的“除以深度”快捷方法。

该动画支持开篇说明:增加相机深度会让投影后的屏幕位置朝共同的消失点移动。
这个快捷方法也是透视投影矩阵的一个特例。完整的管线首先把点从共享的世界空间移动到以相机为中心的视图空间,然后乘以一个 4×4 矩阵,生成裁剪空间坐标。将这些坐标除以它们的 `w` 分量,会得到归一化设备坐标(NDC),用于描述相机可见范围内的位置,然后再映射到像素。当焦距缩放比例和宽高比都为 `1` 时,该矩阵的 `x` 和 `y` 公式会精确简化为 `x/z` 和 `y/z`。
该方程为关于投影矩阵、裁剪空间坐标和归一化设备坐标的讨论提供了可视化对应。
额外的坐标回答了一个实际问题:为什么要用四个数来表示一个 3D 点?原文解释说,`(x, y, z, 1)` 会保留原始点,同时允许 4×4 矩阵对它进行运算。它还区分了点与方向:方向用 `w = 0` 表示,因此不会受到平移的影响。更完整的管线之所以重要,是因为真实相机还需要处理方向、位置、视场、宽高比以及近裁剪面和远裁剪面;简单的深度除法忽略了这些问题。
该公式展示了更完整的相机管线,它会在投影和裁剪之前处理相机位置和朝向。
这是一个教学演示,而不是完整的渲染系统。作者称这些示例受到约束且很朴素,并表示实际的 3D 工作通常需要更完整的投影机制。所提供的 Wikipedia 页面独立地将 3D 投影描述为在 2D 平面上显示 3D 对象的技术,而 Phosphor3D 仓库则说明了为什么跳过裁剪、剔除和谨慎的深度处理会导致失真或绘制顺序错误。核心结论更具体,但很有用:深度除法揭示了透视步骤;相机会加入周围的变换,使这一步变得可靠。