2022년 5월 15일 일요일

URP)CameraStackManager

CameraStackManager

 
https://github.com/do-won-kim/CameraStack

unity urp로 넘어오면서 카메라가 제법 많이 변경이 있었는데 그중 눈에 띄는 점은 depth가 사라진 점과 depth only 가 사라진 것이다.

depth는 stack이라는 리스트로 depth only는 overlay camera로 구현이 가능한데 사실 기존에 UI canvas쪽을 screen space - overlay를 사용하던 프로젝트는 카메라를 여러대 쓰는게 아니라서 별로 신경쓸 점이 없다.

하지만 불행이도 우리 프로젝트는 screen space - camera를 사용중이였고 그에따라 ui camera가 따로 존재해서 overlay camera 기능을 사용해주어야 했다.

canvas를 전부 overlay로 바꾸는것은 이펙트 때문에 작업량이 많아져서 불가능 했기 때문에 기존 형태에서 자동으로 씬 이동이나 overlay 카메라가 켜지거나 꺼질때 혹은 base 카메라가 추가되거나 꺼지거나 할때 자동으로 stack 이라는 리스트를 관리해줄 필요성이 있어서 해당 매니저를 제작하게 되었다.


-camera stacking 스크립트-

사용법은 간단하다 CsCameraStacking 스크립트를 카메라에 부착해주고 depth값을 넣어주면된다.
밑에 bool 값은 overlay로 시작하는 카메라가 아니라 basecamera로 시작하는 카메라에 달린 스크립트에 체크 해주면 된다.

만들때 오래걸리지는 않았지만 이 카메라 변경점은 urp로 넘어올 때 많이 당황했던 부분 중 하나였다.


댓글 없음:

댓글 쓰기