[Unity] 핵심 모음

Unity 2022. 3. 4. 19:51
728x90

[ Panel ]

 (1) UI Root 컴포넌트
  - Scaling Style 
    > Felxible : 어떤 해상도의 디바이스에서든 정해진 UI 크기를 유지 
    > Constrained : 어떤 해상도의 디바이스에서든 정해진 UI 크기 비율을 유지
    > ConstrainedOnMobiles : 데스크탑 - Felxible, 모바일 - Constrained 기능 적용

 (2) UI Panel 컴포넌트
  - Alpha (자식 UI들의 Alpha를 컨트롤)
  - Depth (패널의 렌더링 순서를 결정)
  - Clipping (클리핑은 패널 영역을 설정하고, 그 영역 밖은 렌더링 않는 기능)
    > None : 클리핑을 지정하지 않는다. 
    > Texture Mask : 이미지를 선택하여 패널에 마스크를 씌운다.
    > Soft Clipping : 패널 영역 지정하고 클리핑한다. + 외곽부분은 Softness 값으로 흐려지게 한다.
    > Constrain But Dont Clip : 패널 영역은 지정하지만 클리핑하지 않는다.

 (3) Advanced Option
  - Render Q : 오브젝트를 렌더링하는 우선순위를 설정한다
  - Sort Order : 같은 Depth에서의 렌더링 순서를 결정한다.
  - Normal : 패널이 빛의 영향을 받게할 것인지 결정한다.
  - Cull : ScrollView 패널에서 성능향상을 위한 옵션으로, 패널이 드래그되는 동안 자식들을 렌더링하지 않는다.
  - Visible : 패널의 자식들이 화면에 담기는지 계산하여 렌더링을 해줄 것인가를 결정하며, 자식들이 화면 밖으로 나가지않는다면 해당 옵션을 off하여 성능을 높일 수 있다.
  - padding : 패널의 경계 부분을 부드럽게 해준다.
  - Static : 패널의 자식들이 움지이지 않는 경우, Position, Rotation, Scale을 계산하지 않도록하여 성능을 높일 수 있다.

 

[ Atlas ]

 (1) 개요
  게임에 사용되는 수 많은 텍스쳐들을 하나로 묶어 관리, 사용함으로써 각 텍스쳐를 호출하는데 소모되는 비용을 줄여 프로그램의 성능을 높여준다.
 일반적으로 '드로우 콜'이라고하는 텍스쳐를 불러오는데 필요한 과정의 수를 줄이는게 목적이다.

 (2) 생성
  선택창 NGUI -> Open -> Atlas Maker
  Atlas Maker 창 -> new -> Texture 선택 -> Create 클릭 -> 아틀라스 파일을 저장할 경로 지정 -> 저장 경로에 생성된 파일 확인.

 (3) 추가
   선택창 NGUI -> Open -> Atlas Maker
   Atlas Maker 창 > new -> Texture 선택 -> Add/Update 클릭 

 (4) 삭제
   선택창 NGUI -> Open -> Atlas Maker
   Atlas Maker 창 -> 삭제할 Texture 오른쪽에 있는 'X버튼 + Delete버튼'을 누른다.

 

[ Sprite ]

 (1) 개요
  NGUI에서의 Sprite는 단순 이미지 뿐만 아니라, 버튼이나 스크롤뷰 등 다양한 UI를 구현할 수 있는 핵심 UI이다.

 (2) 생성
  선택창 NGUI -> Create -> Sprite
  단축키 : Alt + Shift + S

 (3) UI Sprite 컴포넌트
  - Atlas : 사용할 Atlas 선택
  - Sprite : 사용할 Sprite 선택
  - Size : 사이즈 결정(단위 :pixel)
  - Type        
    > Simple : 일반적인 스프라이트의 성질을 가지며 스케일링 시, 텍스쳐의 모든 픽셀이 똑같이 스케일링된다. => 왜곡 및 선명도가 떨어진다.
    > Sliced : 일반적으로 나인슬라이스, 나인패치로 불리는 것들과 흡사한 기능으로, 스프라이트를 9등분(T, B, L, R, TL, TR, BL, BR, Center)하고 스케일링 시, Center 부분만 조정되도록하여 외곽을 가지는 박스나 말풍선같은 텍스쳐의 왜곡 및 선명도를 유지할 수 있다.
    > Tiled : 스프라이트를 타일처럼 표현한다.
    > Filled  : 스트라이트를 채우는 방향(수직, 수평 등 5가지 타입)을 정하여 Fill Amount(0 ~ 1) 값에 따라 픽셀을 채운다.  예) '수직 + 0.5 + dir(->)' => 이미지를 왼쪽부터 오른쪽으로 50%(0.5)만큼 채워서 보여준다. (좌측 절반만 보여진다.)
    > Advanced : Sliced의 상위 기능으로 9등분된 (T, B, L, R, TL, TR, BL, BR, Center)를 각각 제어할 수 있다.
  - Flip : 상하 좌우 뒤집기
  - Color Tint : 스프라이트의 기본 색상을 정한다.
  - Pivot : 말그대로 이동, 회전 등의 기준이되는 피벗(기준점)을 의미
  - Depth : 같은 깊이에 있는 UI들과의 렌더링 순서를 결정
  - Snap : 스프라이트를 오리지널 사이즈로 되돌린다. 주로 사이즈나 스케일링이 잘못됐을 때, 처음 상태로 복구하기 위해 사용한다.

 

[ Label ]

 (1) 생성
  선택창 NGUI -> Create -> Label
  단축키 : Alt + Shift + L

 (2) UI Label 컴포넌트
  - Font : Text의 폰트를 선택한다.
  - Size : 텍스트 사이즈를 정한다.
  - Text : 텍스트를 입력한다.
  - Modifier
    > None : 옵션을 선택하지 않는다. 텍스트를 그대로 출력
    > To Uppercase : 영문자를 대문자로 출력
    > To Lowercase : 영문자를 소문자로 출력
    > Custom : None과의 차이점을 모르겠다.
  - Overflow 
    > Shrink Content : 텍스트의 크기가 라벨 영역보다 벗어날 정도로 커질 수 없게 막는다.
    > Clamp Content : 라벨 영역을 벗어난 텍스트를 보여주지 않는다.
    > Resize Freely : 텍스트의 크기에 맞춰서 라벨 영역이 늘어나거나 감소한다.
    > Resize Height : 현재 라벨의 width가 고정된 상태로 텍스트에 맞춰 Height가 늘어나거나 감소한다.

참고한 곳
https://mailmail.tistory.com/

728x90

'Unity' 카테고리의 다른 글

유용한 유니티 소스  (0) 2022.11.30
[Unity] WebGL 구현  (0) 2022.07.27
[Unity] Multiple precompiled assemblies with the same name Newtonsoft.Json.dll  (0) 2022.01.18
언리얼 학습  (0) 2021.12.30
[Unity] Toast Message 처리하기  (0) 2021.12.30
Posted by kjun.kr
,