카메라 스택은 하나의 베이스 카메라와 그 위에 쌓아 올린 하나 이상의 오버레이 카메라로 구성됩니다. 에디터에서 이러한 카메라를 원하는 대로 얼마든지 추가, 제거, 재배열하여 원하는 효과를 구현할 수 있습니다.
이 페이지는 다음 섹션으로 구성됩니다.
카메라 스택에 카메라를 추가하려면 다음 과정을 따르십시오.
이제 오버레이 카메라가 베이스 카메라의 카메라 스택의 일부가 됩니다. Unity가 베이스 카메라의 출력 위에 오버레이 카메라의 출력을 렌더링합니다.
참고: 카메라 스택에서 여러 개의 카메라를 생성할 때 카메라가 모두 필요할지 고려하십시오. 카메라를 추가하면 렌더링 속도가 느려지는데, 이는 활성 카메라는 아무것도 렌더링하지 않더라도 전체 렌더링 루프를 거치기 때문입니다.
C# 스크립트로 카메라 스택에 카메라를 추가할 수도 있습니다. 아래와 같이 베이스 카메라의 Universal Additional Camera Data 컴포넌트의 cameraStack 프로퍼티를 사용하면 됩니다.
var cameraData = camera.GetUniversalAdditionalCameraData();
cameraData.cameraStack.Add(myOverlayCamera);
카메라 스택에서 카메라를 제거하는 과정은 다음과 같습니다.
오버레이 카메라가 씬에 남아 있지만 카메라 스택에는 더 이상 포함되지 않습니다.
C# 스크립트로 카메라 스택에서 카메라를 제거할 수도 있습니다. 아래와 같이 베이스 카메라의 Universal Additional Camera Data 컴포넌트의 cameraStack 프로퍼티를 사용하면 됩니다.
var cameraData = camera.GetUniversalAdditionalCameraData();
cameraData.cameraStack.Remove(myOverlayCamera);
카메라 스택의 카메라 순서를 변경하는 과정은 다음과 같습니다.
베이스 카메라는 카메라 스택의 베이스 레이어를 렌더링하고, 스택의 오버레이 카메라는 그 위에 리스트에 나열된 순서(위에서 아래)대로 렌더링합니다.
C# 스크립트를 사용하여 카메라 스택의 순서를 변경할 수 있습니다. 베이스 카메라의 Universal Additional Camera Data 컴포넌트의 cameraStack 프로퍼티를 사용하면 됩니다. cameraStack은 List이며 다른 List와 동일한 방식으로 그 순서를 변경할 수 있습니다.