2013-12-12 42 views
0

当我们使用平行投影时如何得到射线和射线的方程,以及如何推导这个方程?平行投影射线的方程

+0

这个问题似乎是题外话题,因为它是关于几何。 –

+0

看看:http://scratchapixel.com/lessons/3d-advanced-lessons/perspective-and-orthographic-projection-matrix/它包含你所需要的,不需要在这里复制。 BTW。在互联网上进行一点搜索肯定会为您提供答案。 – user18490

回答

0

在传统的光线跟踪中,您使用的是始于您的视点的光线。对于每个像素,您可以计算它在相机前面的虚拟屏幕上的位置,并通过该像素拍摄光线。

设pO为视点,d为摄像机的方向,r为指向右侧的矢量,u为矢量指向的向量。令w为水平屏幕中的像素数量,h为垂直像素数量。

用于射线通过任何像素x去的参数方程中,y是则:

射线= PO + T *归一化(d +(X - 0.5瓦特)/0.5w * R +(Y - 0.5 h)/0.5h * u)

其中t是参数。

Perspective projection

对于平行投影,移动虚拟屏幕到原点,并计算在x,y是光线的原点,然后使用相同的方向d为每条射线:

射线= (p0 +(x - 0.5w)/0.5w * r +(y - 0.5h)/0.5h * u)+ t * d

0

对于透视投影,您有一个眼睛的起源,方向,向右和向上的向量。然后,通过缩放向右和向上矢量,从眼睛原点向虚拟屏幕中的每个像素运行矢量。

在平行投影中,您对屏幕上的点执行相同的计算,但您的原点会变成该点,并且您对每条射线使用相同的方向。

+0

可否请您用数学术语解释? – debonair