webgl - 模型坐标到屏幕坐标

时间:2013-07-10 21:03:07

标签: matrix 3d webgl cg

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

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

result_vec4 = perspective_matrix * camera_matrix * model_matrix * vertex_coords_vec4

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

有没有人对这里的问题有什么想法? 非常感谢你的任何想法。

1 个答案:

答案 0 :(得分:1)

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

result_vec4 /= result_vec4.w

通过应用此透视图,result_vec4.xyz将位于[-1,1]。