0

私は、sandy.primitive.Box の複数のインスタンスを使用して画像をつなぎ合わせています。各ボックスは 96x91 ですが、ビューポートは 960x273 で、ボックスを 10x3 の完全なグリッドにレイアウトすると、正確にフィットするはずです。ただし、正確なカメラ fieldOfView を取得できないようです。いくつかの式を試しました(「焦点距離」を調整するための式と、焦点を直接調整するための式)。これらの式は両方とも、狭すぎる視野角を生成します。

// 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 に答える