유니티에서도 여러개의 카메라를 지원하는데,
특히 3D 게임에서는 2대이상이 필수일 것이다.
하나는 캐릭터같은 3D 오브젝트를 렌더하는 카메라, 그리고 다른 하나는 UI전용 카메라를 예로 들수 있을 것이다.
좀 더 디테일하고 다양하게 하기 위해 3,4 대 이상의 카메라를 사용하는 경우도 있다.
일단 레이어의 개념만 잘 이해하면 카메라 설정은 그다지 어렵지 않다.
하나의 씬 안에 여러개의 오브젝트가 있으면
각각 렌더할 카메라를 지정하는 개념이 레이어이다.
먼저 카메라 셋팅전 화면상의 오브젝트의 레이어를 각각 구분해 준다.
그리고 어떤 레이어로 설정된 오브젝트를 그릴지 카메라 컴퍼넌트의 레이어를 수정해 준다.
이 레이어와 연결되는 개념이 Culling Mask인데,
어떤 레이어를 렌더할 것인지 지정해주며 복수 선택도 할 수 있다.
그리고 Depth 를 설정해주면 된다.
숫자가 낮을수록 먼저 그리게 되므로 뒤쪽으로 보여진다.
따라서 높은 수치로 설정된 카메라는 나중에 그려지게 된다.
ClearFalg는 화면상의 빈 공간을 어떤식으로 채울지 결정하는 플래그이다.
Skybox | 스카이박스로 채운다 |
SolidColor | 백그라운드 컬러로 채운다 |
Depth | Depth만 지운다 |
Nothing | 아무것도 하지 않음 |
Projection을 Orthographic으로 설정하면 Depth를 무시하므로 2D화면으로 나타나게 된다.
UI 카메라일 경우, 이렇게 셋팅하면 된다.
camera.cullingMask = 1 << 0;
또한 이와 같이 스크립트상에서도 대부분 편집할 수 있다.
나머지 셋팅은 Scene파일을 보며 적절히 셋팅하면 된다.
http://docs.unity3d.com/ScriptReference/Camera.html
'프로그래밍 > Unity3D' 카테고리의 다른 글
Visual Studio 2010 Tools for Unity (0) | 2016.01.04 |
---|---|
Unity 게임안에서 직접 로그를 찍자 (0) | 2015.11.05 |
유니티엔진 VS 언리얼엔진 (0) | 2015.10.09 |
EZGUI 와 NGUI 비교 (0) | 2015.10.08 |
유니티 흐름도 - Unity Script Life Cycle (0) | 2015.10.02 |