2010-05-19 3 views
0

sandy.primitive.Box의 여러 인스턴스를 사용하여 이미지를 결합하고 있습니다. 각 상자는 96x91이고 뷰포트가 960x273인데 10x3의 완벽한 그리드에 상자를 배치하면 정확한 맞게 만들어야합니다. 그러나 정확한 카메라 fieldOfView를 얻지 못하는 것 같습니다. 저는 몇 가지 공식을 시도했습니다 (하나는 "초점 거리"를 조정하기위한 것이고 다른 하나는 fov를 직접 조정하는 것입니다). 이 수식 둘 다 너무 좁은 fov 각을 생성합니다.Sandy 3D AS3을 사용하여 여러 개의 3D 객체로 뷰포트를 정확하게 채우십시오.

// 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) 

같은 프로젝트에 대한 또 다른 질문 : 나는 이미지 (평면) 차원 공간에있는 것으로 나타나도록 계산 ... 가장 좋은 방법에 어떤 아이디어를 각 큐브의 관점을 조정해야 이러한 "보정"?

답변

0

나는이 질문을 제기 한 직후 거리를 결정할 때 큐브의 깊이 (실제로는 깊이의 절반)를 고려하지 않았다는 것을 깨달았다.

// field of view 
2 * Math.atan2((stage.stageHeight/2), -(cam.z + (cubeDepth/2))) * (180/Math.PI)