0

我正在使用 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 空间(平面)中......关于计算这种“校正”的最佳方法的任何想法?

4

1 回答 1

0

在提出这个问题后不久,我意识到在确定距离时我没有考虑立方体的深度(实际上是深度的一半)。

// field of view
2 * Math.atan2( (stage.stageHeight/2), -(cam.z + (cubeDepth/2)) ) * (180 / Math.PI)
于 2010-05-23T04:25:03.170 回答