카메라가 보는 것은 트랜스폼과 Camera 컴포넌트에 따라 정의됩니다. 트랜스폼 위치는 뷰포인트를 정의하며 전방(Z) 축은 뷰 방향을, 위쪽(Y) 축은 화면 상단을 정의합니다. Camera 컴포넌트의 설정은 뷰 안에 있는 영역의 크기와 모양을 정의합니다. 이러한 파라미터를 설정하면 카메라가 현재 화면에 ‘보이는’ 것을 표시할 수 있습니다. 게임 오브젝트가 이동하고 회전할 때 표시된 뷰도 그에 따라 이동하고 회전합니다.
원근 카메라와 직교 카메라 모두 현재 위치에서 ‘볼 수 있는’ 거리를 제한합니다. 이러한 제한은 카메라의 전방(Z) 방향에 수직인 평면으로 정의됩니다. 카메라로부터 멀리 떨어진 오브젝트가 ‘클리핑’(즉, 렌더링에서 제외)되기 때문에 이를 원거리 클리핑 평면_이라고 합니다. 카메라에 가까운 근거리 클리핑 평면_ 도 있습니다. 가시적 거리 범위는 두 평면 사이의 거리입니다.
원근을 사용하지 않는다면 오브젝트가 거리에 상관 없이 같은 크기로 보입니다. 이는 직교 카메라의 뷰 영역이 두 클리핑 평면 사이에서 직사각형 박스가 늘어나는 형태로 나타난다는 뜻입니다.
원근을 사용하면 카메라와의 거리가 늘어날수록 오브젝트의 크기가 줄어듭니다. 즉, 씬에서 볼 수 있는 부분의 너비와 높이는 거리가 늘어날수록 커집니다. 따라서 원근 카메라의 뷰 영역은 상자가 아니라 피라미드 모양이며, 정점은 카메라 위치에 있고 밑면은 원거리 클리핑 평면에 있습니다. 그러나 상단이 근거리 클리핑 평면에 의해 잘렸기 때문에 정확히 피라미드 모양은 아니며, 이렇게 잘린 피라미드 모양은 절두체 라고 합니다. 높이가 일정하지 않기 때문에 절두체는 너비와 높이의 비율(종횡비 라고 불림) 및 정점에서 상단과 하단 사이의 각도(시야각 또는 FOV 라고 불림)로 정의됩니다. 자세한 설명은 뷰 절두체 이해 페이지를 참조하십시오.
절두체 는 피라미드 모양에서 상단을 바닥과 평행하게 잘라낸 모양을 나타냅니다. 이 모양은 원근 카메라로 보이고 렌더링되는 영역과 같습니다. 다음의 사고 실험은 이러한 이유를 설명하는 데 도움이 됩니다.
카메라에 빗자루 손잡이나 연필과 같은 직선 막대를 대고 사진을 찍는다고 상상해 보십시오. 막대가 카메라 렌즈에 수직으로 이미지 중앙에 놓여 있으면 끝부분만 이미지에서 원으로 보이고 다른 모든 부분은 가려집니다. 위쪽으로 움직이면 하단이 보이기 시작하지만, 막대를 위쪽으로 기울여 다시 숨길 수도 있습니다. 막대를 계속 위로 움직이고 더 위로 기울이면 원형 끝이 결국 이미지의 상단 가장자리에 도달합니다. 이때 월드 공간에서 막대가 추적한 선 위에 있는 오브젝트는 이미지에 보이지 않습니다.
막대는 왼쪽, 오른쪽, 아래 또는 수평과 수직의 조합으로 쉽게 이동하고 회전할 수 있습니다. ‘숨겨진’ 막대의 각도는 단순히 두 축에서 화면 중심과의 거리에 따라 달라집니다.
이 사고 실험을 통해 카메라 이미지에서 각 점은 실제로 월드 공간의 선에 대응되며 해당 선 위에 있는 단일 점만을 이미지에서 볼 수 있다는 점을 알 수 있습니다. 선 위치 뒤에 있는 모든 것은 가려집니다.
이미지의 바깥쪽 가장자리는 이미지의 모서리에 해당하는 분기선으로 정의됩니다. 해당 선을 카메라를 향해 뒤로 추적하면 결국 하나의 점으로 수렴됩니다. Unity에서 이 점은 카메라의 트랜스폼 위치에 정확히 있게 되며 이를 원근의 중심이라고 합니다. 원근 중앙의 화면 상단과 하단 중앙에서 수렴되는 선에 따라 기울어진 각도를 시야각(FOV)이라고 합니다.
위에서 언급한 바와 같이 이미지의 가장자리의 분기선을 벗어나는 것은 카메라에 보이지 않지만, 렌더링 항목에는 두 가지 제한이 있습니다. 근거리 및 원거리 클리핑 평면은 카메라의 XY 평면과 평행하며 각각 중앙선을 따라 일정 거리로 설정됩니다. 근거리 클리핑 평면 카메라에 가까우며 원거리 클리핑 평면에서 멀리 떨어진 것은 렌더링되지 않습니다.
두 클리핑 평면과 이미지 모서리에서 발산하는 선은 잘려나간 피라미드 형태를 만들어내며 이것이 바로 뷰 절두체입니다.