如何在光线追踪器(比方说 PBRT)中计算渲染图像的焦距?

How can I calculate the Focal Length of my rendered image in a ray tracer (Let's say PBRT)?


实际上,我已经在 PBRT 中渲染了 3 个具有不同光线方向的球体输入图像。
作为该过程的下一步,我将计算该球体的表面法线,因此我需要将焦距值放入我的公式中。
我现在所知道的是,我的 PBRT 输入文件中的视野 (FOV) 值为 45。
整个图像的尺寸为32*32,图像中球体的尺寸为26*26。
我如何使用此信息计算焦距的确切数量?

如果不知道 3D 图形中的焦距,则无法使用 透视。它也称为 z_near,它是从相机原点(投射光线的点)到 投影平面 的距离。看看这个:

其中:Camera 标签附近的点 P 焦点 并且标签 Screen(z_near) 的蓝色矩形是 投影平面焦距是该点到平面的垂直距离

PS。 boyfarrell 是对的,您不需要 焦距 进行 正常 计算。它没有任何意义。您可能需要它来计算一些物理过程,例如 pupil size 等,但不适用于 normals.