我一直在四处寻找,似乎无法找到我正在寻找的东西.我发现了"规范公式",但是使用这些公式的最佳方法是什么?我必须缩小每个顶点? 或者,还有更好的方法?
一个公式真的可以帮助我,但我也在寻找关于相对于观众位置的近和远z平面的解释
以下是导出正交项目矩阵的合理来源:
请考虑以下几点:首先,在眼睛空间中,您的相机位于原点并直接沿z轴向下看.第二,你通常希望你的视野像向右一样向左延伸到左边,同样远远高于z轴,如下所示.如果是这种情况,则z轴直接穿过视图体积的中心,因此您有r = -l和t = -b.换句话说,您可以完全忘记r,l,t和b,并简单地根据宽度w和高度h以及其他剪裁平面f和n定义视图体积.如果你将这些替换放到上面的正交投影矩阵中,你会得到这个相当简化的版本:
以上所有内容都为您提供了一个如下所示的矩阵(如果您希望生成的变换矩阵可以处理任意相机的位置和方向,则可以根据需要添加旋转和平移).
正交投影矩阵的LaTeX渲染http://www.codeguru.com/images/article/10123/3dproj20.gif