2019년 9월 5일 목요일

Unity Canvas Render Mode 설정

UGUI의 Canvas 설정 중 Render Mode 를 정리한다.
이는 2D 게임 개발 중 Canvas > Particle > Canvas 의 출력 순서를 정의하기 위한 복습 자료이다.


  1. 2D 게임을 만들면서 Main Camera가 Orthographic인 설정에서 Screen Space - Camera 모드로 설정한 Canvas를 복수로 설정하는 것이 좋다. 
  2. 이는 Canvas의 Sorting Layer와 Sort Order의 설정을 통해 Depth를 지정 한다. 
  3. 그리고 Particle System의 Renderer 항목의 Sorting Layer와 Sort Order의 설정을  Canvas 사이로 설정해 Particle 출력의 효과를 발생시킬 수 있다. 


Screen Space - Overlay 모드 

  • 캔버스가 씬 내부의 어느 곳에 있더라도 화면 전체를 덮는 모습으로 렌더링 된다.
  • Pixel Perfect
    - On으로 지정하면 UI의 픽셀의 색 그대로 표현하도록 렌더링 함
    - 경계면이 명확히 표현할 수 있음(안티 앨리어싱 없이 렌더링)
    - 다양한 UI 연출로 인한 퍼포먼스를 위해서는 Off로 사용하기를 권장
  • Sort Order
    - 렌더링 되는 순서를 수치로 설정
    - 값이 작을수록 안쪽에 렌더링 됨 


Screen Space - Camera 모드 

  • 지정된 카메라와 일정한 거리만큼 떨어진 앞쪽에 위치 
  • 카메라의 Projection 속성이 Perspective로 지정된 경우 UI 요소는 원근감이 느껴지도록 렌더링 됨 (원근감의 정도는 Field of View 속성값에 의해 결정)
  • Pixel Perfect
    - On으로 지정하면 UI의 픽셀의 색 그대로 표현하도록 렌더링 함
  • Render Camera
    - 캔버스를 렌더링할 카메라를 지정
  • Plane Distance
    - 카메라에서 캔버스까지의 거리를 설정
  • Sorting Layer
    - 캔버스의 소팅 레이어(Sorting Layer)를 지정.
    - 소팅 레이어란 2D 스프라이트를 포함한 2D 그래픽을 렌더링하는 순서를 제어하는 기능
    - Z좌표와 관계없이 렌더링 순서를 제어 할 수 있음
  • Sort Order
    - 렌더링 되는 순서를 수치로 설정


World Space 모드 

  • 설정된 Canvas는 씬에 있는 다른 게임 오브젝트와 동일한 자격으로 취급
  • Canvas의 크기는 Rect Transform 컴포넌트에 따라 정의
  • UI 요소는 씬에 있는 다른 GameObject와 함께 3D 공간에서의 위치 관계대로 렌더링 됨
  • UI요소를 씬의 일부로 다룰 때 이용하면 좋음
  • Event Camera
    - 이벤트를 처리하기 위한 카메라를 지정
    - OnClickButton()과 같은 UI 이벤트 리스너를 통해 발생 되는 결과가 적용될 대상
  • Sorting Layer
    - 캔버스의 소팅 레이어(Sorting Layer)를 지정.
  • Sort Order
    - 렌더링 되는 순서를 수치로 설정





댓글 없음:

댓글 쓰기

Unity - Firebase 연동 (Analytics, AdMob)

버전 : firebase_unity_sdk_6.5.0.zip 게임에서 통계 측정 및 광고 추적을 위해 Firebase 을 연동한다. 앞서 [Unity - GPGS 와 Admob 연동 및 배포 준비 작업]  연동 이후에 작업을 진행 한다. 유니...