Post
GameObject와 GameComponent 관계
게임 내 모든 Object는 모두 GameObject이다. 하지만 안에 들은 내용물로 각각 다른 GameObject가 된다.
내용물이 바로 Component이다.
GameObjec가 컨테이너(빈상자)라고 생각하면 된다.
Canvas란?
Canvas Component를 가진 GameObject. 모든 UI요소의 부모요소.
Canvas가 없을 땐 어떤 UI를 생성하든 같이 생성된다.
UI 렌더 순서
하이어라키 뷰에 나열된 순서대로(위에서 아래로) 랜더됨.
렌더 순서 함수
// obj가 현재 위치한 계층에서 가장 먼저 렌더링 되도록한다(가장 안쪽)
obj.transform.SetAsFitstSibling();
// obj가 현재 위치한 계층에서 가장 나중에 렌더링되도록 한다(가장 위에)
obj.transform.SetAsLastSibling();
// obj를 현재 위치한 계층에서 3번째 요소가 되는 위치에 놓는다(안쪽에서부터 3번째 렌더링)
obj.transform.SetSiblingIndex(3);
캔버스의 렌더링 모드와 속성
총 3가지 렌더링 속성
*Sceen Space - Overlay
캔버스가 씬 내부 어느곳에 있어도 화면 전체를 덮는 모습.
화면의 크기나 해상도가 변경되면 그에 맞춰서 캔버스의 크기도 자동 변환
*Sceen Space - Camera
카메라 Projection 속성에 따라 다르게 렌더
Perspective라면 원근감 있게 렌더(원근감의 정도는 Field of View속성에 따라 달라짐)
*World Space
캔버스의 소팅 레이어 순서에 따라 렌더됨.
Canvas Scaler 컴포넌트
Canvas에 추가된 컴포넌트.
Canvas안에 있는 UI 전체 요소 의 스케일과 픽셀 밀도를 제어
폰트크기. 이미지..
UI Scale Mode
*Constant Pixel Size
UI 요소의 위치나 크기가 화면상의 픽셀 단위에 의해 설정됨.
*Scale With Screen Size
지정된 참조 해상도에 따라 달라짐
=> 보통은 이걸로 기기해상도를 맞춘다.
너비나 높이를 기준으로 맞추기 때문에 화면이 잘리지 않는다.
참조 해상도는 x 960 y 630
ScreenMatchMode는 0(Width 기준) 으로 하였다.
*Constant Physical Size
화면 해상도와 참조 해상도의 가로세로 비율이 다를 때 캔버스를 스케일하는 방법 설정.
'이전게시판 > Unity' 카테고리의 다른 글
유니티 스프라이트2D (0) | 2018.04.28 |
---|---|
유니티 네비게이션, 파티클 (0) | 2018.04.22 |
총알 만들고 쏘기(Prepfeb) (0) | 2018.04.21 |
키보드로 움직이기 or 마우스 방향으로 이동하는 물체 스크립트 (0) | 2018.04.15 |
Unity 기초 정리 (0) | 2018.04.14 |
유니티 C# Scene 변경 (0) | 2018.04.14 |
유니티 UGUI 버튼 예제 (0) | 2017.10.08 |
유니티 5.X와 함께하는 C#첫걸음.. (0) | 2017.05.13 |