카메라로부터 일정 거리에 있는 뷰 절두체의 교차면은 가시 영역을 프레이밍하는 월드 공간의 사각형을 정의합니다. 특정 거리에서 이 사각형의 크기를 계산하거나 사각형이 특정 크기인 거리를 찾는 것이 유용할 때도 있습니다. 예를 들어 움직이는 카메라가 플레이어 같은 오브젝트를 항상 완전히 촬영해야 하는 경우, 오브젝트의 일부가 잘릴 정도로 가까이 접근해서는 안 됩니다.
일정 거리만큼 떨어진 절두체의 높이(두 값 모두 월드 단위)는 다음 공식을 통해 구할 수 있습니다.
var frustumHeight = 2.0f * distance * Mathf.Tan(camera.fieldOfView * 0.5f * Mathf.Deg2Rad);
또한 이 과정을 반대로 하면 특정 절두체 높이일 때의 거리를 계산할 수 있습니다.
var distance = frustumHeight * 0.5f / Mathf.Tan(camera.fieldOfView * 0.5f * Mathf.Deg2Rad);
거리와 높이를 모두 알고 있을 때는 FOV 각도를 계산할 수도 있습니다.
var cameraFieldOfView = 2.0f * Mathf.Atan(frustumHeight * 0.5f / distance) * Mathf.Rad2Deg;
각 계산식의 결과를 얻으려면 절두체의 높이를 알아야 하며, 절두체의 높이는 절두체의 너비를 이용하여 쉽게 구할 수 있습니다(절두체의 높이를 이용하여 너비를 계산할 수도 있음).
var frustumWidth = frustumHeight * camera.aspect;
var frustumHeight = frustumWidth / camera.aspect;