修正焦距公式;输入两个互相垂直方向的消失点完整像素坐标
坐标原点取截图左上角;主点暂按截图中心 C=(W/2,H/2) 估计。消失点可以在截图之外,X 或 Y 坐标允许小于 0 或大于截图尺寸。
分别找到两组在三维场景中互相垂直的平行线,并延长得到各自的消失点。
请从开镜截图单独测量两个消失点;不能直接沿用腰射截图中的坐标。
这里的 f 是以像素为单位的焦距。旧版只用 X 坐标且采用错误的焦距公式,已改为完整二维坐标关系。
1. 只建议测腰射FOV,开镜的灭点很容易跑出图外。
2. 开镜建议用尺寸法,尺寸法即:
知道腰射FOV后,对比腰射和开镜的两个物体长度(准星不动),用画图工具看有多长像素点。
然后通过计算器算出结果。
截图左上角是 (0,0),向右 X 增大,向下 Y 增大。用图片编辑器延长两组平行线,读出各自交点的 X、Y 坐标。交点可以在画面外,因此坐标超出宽高范围是允许的。
注意:初始坐标仅用于试运行,不代表任何具体游戏的真实 FOV。请用你自己的截图重新测量。
下面两幅图演示上面那条公式的几何含义:两组互相垂直的平行线在画面中各汇聚成一个消失点,两个消失点到主点的距离 a、b 共同决定焦距 f = √(a·b),再由 f 换算出水平 / 垂直 FOV。拖动滑块即可看到透视结构实时变化。滑块范围对应示例画布上的水平 FOV 约从 110°(a、b 取最小值)到 60°(取最大值)。
本图示与上方计算器使用同一关系式 f² = −(V₁−C)·(V₂−C)。当两个消失点分别位于主点的左右两侧、且都落在地平线上时,该式化简为 f² = a·b;上方计算器则直接使用完整的二维坐标式,因此消失点不在地平线上也能计算。窄 FOV 时消失点会远到画面之外,图中射线会从画布外射入,这与真实截图的观感一致。