1

我在计算顶点的屏幕坐标时遇到问题。这不是一个特定的 webgl 问题,更多的是一般的 3d 图形问题。

我使用的矩阵变换序列是:

result_vec4 = perspective_matrix * camera_matrix * model_matrix * vertex_coords_vec4

model_matrix 是将其局部坐标系中的顶点转换为全局场景坐标系。所以我的理解是最终的 result_vec4 在剪辑空间中?然后应该在 [-1,1] 范围内。这不是我得到的...... result_vec4 最终只包含一些坐标的标准值,不对应于顶点的正确屏幕位置。

有人对这里可能出现的问题有任何想法吗?非常感谢您的任何想法。

4

1 回答 1

2

要进入剪辑空间,您需要使用以下方法result_vec4在超平面上投影w=1

result_vec4 /= result_vec4.w

通过应用这种透视除法result_vec4.xyz将在 [-1,1] 中。

于 2013-07-10T21:37:54.650 回答