위키북스 출판사 이재현 저자님의 '절대강좌! 유니티' 책을 참고하여 필기한 내용입니다.
RawImage 컴포넌트
이전에 받았던 에셋에서 이미지 하나를 선택하여
새로만든 RawImage의 Texture에 넣기
이때 하이러키뷰의 순서 지켜주기
Image 컴포넌트와 비슷하지만 배경 이미지와 같은 큰 이미지에 사용됨
일반 텍스처도 사용할 수 있으며 Sprite Atlas 에 포함되지 않는다.
큰 사이즈의 이미지가 Sprite Atlas에 포함된다면 불필요한 메모리를 낭비
한 번만 사용될 이미지일 때 사용됨
[Set Native Size] 버튼을 눌러 원본 이미지 크기로 설정
Panel의 Color 속성값 변경
Button 컴포넌트
메뉴에서 게임을 시작하기 위한 Start 버튼 제작
Pannel 하위에 Button 오브젝트 생성
속성 | 설명 |
Interactable | Button 기능을 활성화/비활성화 한다. Transform 속성이 Animation일 경우 이 옵션을 언체크하면 Disabled Trigger가 발생 |
Transition | 버튼의 클릭, 롤오버, 비활성화 등의 상태를 어떻게 변경할 것인지 설정 - None - ColorTint - SpriteSwap - Animation |
Navigation | 키보드 입력 포커스를 받은 후 키를 통해 다음 버튼으로 이동하는 방식을 설정 |
OnClick | 버튼을 클릭했을 때 수행할 함수를 연결하는 이벤트 속성 |
Transition 속성
4가지의 상태를 갖고 있음
각 상태에 따라 버튼의 외형에 변화를 줄 수 있는 속성
- None : 버튼 상태가 바뀌어도 아무런 변화를 주지 않는다
- Color Tint : 버튼 상태에 따라 색상의 변화를 줌 (기본 값), 색상의 농도, 페이드인, 페이드 아웃, 시간 조절가능
- Sprite Swap : 버튼 상태에 따라 버튼의 이미지를 변경
- Animation : 버튼에 애니메이션 효과를 적용가능, Auto Generate Animation 버튼을 클릭하면 Animation Controller가 자동으로 생성됨
우리는 Animation 으로 변경하고 컨트롤러 생성 버튼을 클릭하여 이름은 Button인 애니메이터를 만든다.
해당 애니메이터에 들어가면 5개의 스테이트가 만들어져 있는 것을 확인할 수 있다.
Tigger 속성과 같은 이름의 파라미터가 만들어져 있는 모습을 볼 수 있다.
**지금부터 순서를 잘 지켜야한다!
마우스 커서가 버튼 위로 롤오버 됐을 때 커지는 애니메이션 만들기
하이러키뷰의 버튼 클릭하고 Window - Animation - animation 선택
Highlighted 로 변경하고 녹화 버튼을 누른다.
Add Property에서 Scale을 추가한다.
제일 오른쪽 상단의 마름모 아이콘을 선택하고 Delete Keys 메뉴 선택
첫번째 키 프레임을 선택한 후 스케일 속성을 아래와 같이 변경
녹화버튼을 다시 눌러 중단하고 Animator 창으로 돌아온다.
Navigation
버튼이 여러개 있을 경우 키보드로 포커스를 어떻게 이동시킬 것인가에 대한 속성
하위에 버튼 두개를 추가하고 다음과 같인 정렬
이미지와 color, 오브젝트명을 바꾼다.
버튼과 버튼 사이에 보이는 화살표는 상하좌우 키로 포커스가 이동되는 순서를 표현
Botton 컴포넌트의 Visualuze 토글 버튼으로 표시 여부를 선택할 수 있음
이 옵션은 PC 또는 콘솔 게임에서 메뉴를 키보드나 컨트롤러로 이동해야 되기 때문
Navigation 옵션 | 기능 |
None | 포커스 이동 기능을 사용하지 않는다 |
Horizontal | 우 화살표 키만 허용한다 |
Vertical | 상하 화살표 키만 허용한다 |
Automatic | 상하좌우 화살표 키를 모두 사용하며 자동으로 이동 순서가 결정된다 |
Explicit | 포커스 이동을 직접 선택할 수 있으며, 이 옵션을 선택하면 전후좌우로 이동할 객체를 연결할 수 있는 속성이 활성화 |
이 속성이 활성화 되도록 Event System의 First Selected에 Button_Start를 연결한다
Button Event
: 어떤 작업을 클릭했을 때 어떤 작업을 수행할 수 있게 하는 기능
버튼 클릭 이벤트가 발생했을 때 호출할 수 있는 함수는 여러개를 지정 가능
새로운 게임오브젝트와 스크립트 생성후 연결
Button_Start의 Button 컴포넌트에 방금 만든 함수를 연결해주고 실행해보자
버튼 이벤트에 연결할 수 있는 함수는 반드시 public 접근 지시자로 선언해야됨
- public void 함수명()
- public void 함수명(인자)
인자로 사용할 수있는 데이터 타입
- int
- float
- bool
- string
- Object
object 타입은 유니티 최상위 객체이기 때문에 Transform, MeshRenderer 등 다양한 컴포넌트도 전달 가능함
'Unity 강의 > Unity Course(2) - 절대강좌! 유니티' 카테고리의 다른 글
[Unity Course 2] 07. 유니티 UI 시스템 5 (0) | 2024.06.24 |
---|---|
[Unity Course 2] 07. 유니티 UI 시스템 4 (0) | 2024.06.24 |
[Unity Course 2] 07. 유니티 UI 시스템 2 (0) | 2024.06.22 |
[Unity Course 2] 07. 유니티 UI 시스템 1 (0) | 2024.06.22 |
[Unity Course 2] 06. 적 캐릭터 제작 6 (0) | 2024.06.22 |