유니티:UI: 두 판 사이의 차이
잔글 (→코드로?) |
(→개요) |
||
6번째 줄: | 6번째 줄: | ||
여러 카메라 중 어떤 카메라를 플레이어에게 보여줄지 배정하기도 한다. | 여러 카메라 중 어떤 카메라를 플레이어에게 보여줄지 배정하기도 한다. | ||
===작성=== | |||
계층 창에서 우클릭을 하면 UI메뉴가 따로 있다. 클릭하면 여러 게임 오브젝트가 한번에 생긴다. | |||
캔버스는 바로 게임의 창.. 카메라가 아닌, | |||
17번째 줄: | 15번째 줄: | ||
====유의==== | ====유의==== | ||
UI는 캔버스 하위에 속할 때에만 보인다. | UI는 캔버스 하위에 속할 때에만 보인다. 모든 UI는 캔버스의 자식 오브젝트가 되어야 한다. | ||
===Text UI=== | ===Text UI=== | ||
문자열을 표시하는 UI. 폰트는 라이센스 꼭 확인! | 문자열을 표시하는 UI. 폰트는 라이센스 꼭 확인! | ||
{| class="wikitable" | {| class="wikitable" | ||
!세부항목 | !세부항목 | ||
!설명 | !설명 | ||
32번째 줄: | 29번째 줄: | ||
Vertical overflow | Vertical overflow | ||
|칸을 넘쳐나는 문자열을 포함되지 않는데, 이걸 조절하면 칸이 넘치는 문자열도 표현할 수 있다. | |칸을 넘쳐나는 문자열을 포함되지 않는데, 이걸 조절하면 칸이 넘치는 문자열도 표현할 수 있다. | ||
수평, 수직방향으로 옵션이 있다. 넘쳐날 때 줄바꿈을 할지, 자를지, 그대로 넘치게 표시할지 정한다. | |||
|- | |- | ||
|Best Fit | |Best Fit | ||
| | |||
|- | |||
| | |||
| | | | ||
|} | |} | ||
==== 팁 ==== | |||
Text 오브젝트에 Shadow컴포넌트(Add Component>UI>Effects>Shadow)를 추가해 다루면 가독성이 높아진다. | |||
===이미지 UI=== | ===이미지 UI=== | ||
97번째 줄: | 101번째 줄: | ||
<br /> | <br /> | ||
= | =게임메니저= | ||
UI를 코드로 다룰 수도 있다. | UI를 코드로 다룰 수도 있다. 게임 규칙과 상태, UI에 띄울 데이터를 제어하는 코드를 게임메니저라 부른다. | ||
하위요소를 불러오려면 기존 불러오는 방식 뒤에 Inchildren까지 붙여주어야 한다.<syntaxhighlight lang="c#"> | 하위요소를 불러오려면 기존 불러오는 방식 뒤에 Inchildren까지 붙여주어야 한다.<syntaxhighlight lang="c#"> | ||
//다음의 코드가 최상단에 추가되어야 한다. UI를 사용한다는 의미. | //기존 코드에 더해 다음의 코드가 최상단에 추가되어야 한다. UI를 사용한다는 의미. | ||
// | using UnityEngine.UI; // UI관련 라이브러리. | ||
using UnityEngine. | using UnityEngine.SceneManagement; // 씬 관련 라이브러리. | ||
public class GameManager : MonoBehaviour { | |||
public 타입명 변수명; // 필요한 변수들을 준비한다. | |||
public Text 변수명; // UI에 띄울 텍스트 컴포넌트. 내용변경을 위해 사용. | |||
public GameObject 변수명; // 특정 상황에서 활성화할 텍스트(게임오브젝트). 활성, 비활성화로만 사용. | |||
} | |||
void Start() { | |||
} | |||
public void EndGame() { | |||
} | |||
</syntaxhighlight> | </syntaxhighlight> |
2021년 8월 10일 (화) 22:16 판
- 유니티:개요
- 유니티:기본 조작
- 유니티:카메라
- 유니티:오브젝트
- 유니티:코딩기초
- 유니티:UI
- 유니티:게임 내 화면
- 유니티:플레이어
- 유니티:맵
- 유니티:씬
- 유니티:몬스터
- 유니티:아이템
- 유니티:음향
- 유니티:빌드
- 유니티:VR
- 유니티:팁
개요
게임 메뉴나 스테이터스 등을 표시하기 위한 정보제공기능.
여러 카메라 중 어떤 카메라를 플레이어에게 보여줄지 배정하기도 한다.
작성
계층 창에서 우클릭을 하면 UI메뉴가 따로 있다. 클릭하면 여러 게임 오브젝트가 한번에 생긴다.
캔버스는 바로 게임의 창.. 카메라가 아닌,
캔버스에 가까운 것이 상위에 위치한다.(레이거 같은 느낌으로)
유의
UI는 캔버스 하위에 속할 때에만 보인다. 모든 UI는 캔버스의 자식 오브젝트가 되어야 한다.
Text UI
문자열을 표시하는 UI. 폰트는 라이센스 꼭 확인!
세부항목 | 설명 |
---|---|
Line Spacing | 행바꿈을 할 때 몇 줄을 띄울 것인가. |
Horizental overflow
Vertical overflow |
칸을 넘쳐나는 문자열을 포함되지 않는데, 이걸 조절하면 칸이 넘치는 문자열도 표현할 수 있다.
수평, 수직방향으로 옵션이 있다. 넘쳐날 때 줄바꿈을 할지, 자를지, 그대로 넘치게 표시할지 정한다. |
Best Fit | |
팁
Text 오브젝트에 Shadow컴포넌트(Add Component>UI>Effects>Shadow)를 추가해 다루면 가독성이 높아진다.
이미지 UI
소스이미지를 가져다 넣어야 한다. 이미지 파일을 끌어다 넣으려면, 이미지 타입을 Sprite로 바꾼 후에 넣어주어야 한다.
세부항목 | 설명 |
---|---|
Image Type | 이미지타일을 만들거나, 하나의 이미지를 조정하거나 Filled를 통해 이미지 트렌젝션을 할 수도 있겠다. 혹은, 쿨타임 효과 구현에 쓰인다. |
Set Native Size | 본래 이미지 크기와 동일하게 수정한다. |
버튼 UI
클릭이벤트를 가진 반응형 UI이다. TextUI를 포함하고 있다. 이미지 스크립트를 컴포넌트로 갖고 있다.
세부항목 | 설명 | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Interactable | 반응 하느냐? | ||||||||||||
Transition |
|
앵커
캔버스의 기준점을 앵커라 부른다. 캔버스의 어느 지점을 좌표계의 중심으로 잡을 것인가.
Rect Transform에서 앵커 프리셋을 볼 수 있다. shift를 누르고 보면 컴포넌트에서의 기준점도 정할 수 있다.
앵커를 잘 이용하면 단말기마다 다른 화면 크기에서도 일관성을 유지할 수 있다.
게임메니저
UI를 코드로 다룰 수도 있다. 게임 규칙과 상태, UI에 띄울 데이터를 제어하는 코드를 게임메니저라 부른다.
하위요소를 불러오려면 기존 불러오는 방식 뒤에 Inchildren까지 붙여주어야 한다.
//기존 코드에 더해 다음의 코드가 최상단에 추가되어야 한다. UI를 사용한다는 의미.
using UnityEngine.UI; // UI관련 라이브러리.
using UnityEngine.SceneManagement; // 씬 관련 라이브러리.
public class GameManager : MonoBehaviour {
public 타입명 변수명; // 필요한 변수들을 준비한다.
public Text 변수명; // UI에 띄울 텍스트 컴포넌트. 내용변경을 위해 사용.
public GameObject 변수명; // 특정 상황에서 활성화할 텍스트(게임오브젝트). 활성, 비활성화로만 사용.
}
void Start() {
}
public void EndGame() {
}