我正在使用 sandy.primitive.Box 的多个实例将图像拼接在一起。每个盒子都是 96x91,而视口是 960x273,如果我将盒子布置在 10x3 的完美网格中,这应该可以完全匹配。但是,我似乎无法获得确切的相机 fieldOfView。我尝试了几个公式(一个用于调整“焦距”,一个用于直接调整 fov)。这两个公式都产生了一个太窄的 fov 角。
// focal length
(stage.stageHeight/2) / Math.tan(cam.fov / 2 * Math.PI / 180)
// field of view
2 * Math.atan2( (stage.stageHeight/2), -cam.z ) * (180 / Math.PI)
关于同一个项目的另一个问题:我需要调整每个立方体的透视,使图像看起来在 2D 空间(平面)中......关于计算这种“校正”的最佳方法的任何想法?