유니티:데이터 입력받기: 두 판 사이의 차이
(→키 조작) |
(→개요) |
||
15번째 줄: | 15번째 줄: | ||
} | } | ||
</syntaxhighlight> | </syntaxhighlight> | ||
= 키 입력 = | |||
===키 조작=== | ===키 조작=== | ||
44번째 줄: | 46번째 줄: | ||
|} | |} | ||
==== 입력 매니저 ==== | ====입력 매니저==== | ||
Edit>Project Settings...에서 프로젝트 설정 창을 띄우고 Input>Axes에서 설정된 입력축들을 볼 수 있다. 별다른 처리를 하지 않아도 패드, 조이스틱 등에 대응되어 편리하다. | Edit>Project Settings...에서 프로젝트 설정 창을 띄우고 Input>Axes에서 설정된 입력축들을 볼 수 있다. 별다른 처리를 하지 않아도 패드, 조이스틱 등에 대응되어 편리하다. | ||
{| class="wikitable" | {| class="wikitable" | ||
52번째 줄: | 54번째 줄: | ||
|} | |} | ||
=마우스 입력= | |||
누를 때, 누르고 있을 때, 뗐을 때 3가지 행동으로 조작할 수 있다.<br /> | 누를 때, 누르고 있을 때, 뗐을 때 3가지 행동으로 조작할 수 있다.<br /> | ||
{| class="wikitable" | {| class="wikitable" |
2021년 8월 10일 (화) 02:40 판
- 유니티:개요
- 유니티:기본 조작
- 유니티:카메라
- 유니티:오브젝트
- 유니티:코딩기초
- 유니티:UI
- 유니티:게임 내 화면
- 유니티:플레이어
- 유니티:맵
- 유니티:씬
- 유니티:몬스터
- 유니티:아이템
- 유니티:음향
- 유니티:빌드
- 유니티:VR
- 유니티:팁
개요
캐릭터를 움직이려면 키 입력을 받아야 한다.
컴퓨터, 단말기에 데이터를 넘겨 오브젝트를 조작한다.
방법
Update() 안에서 Input 클래스를 사용한다.(유니티 제공 클래스)
다음과 같이 사용한다.
void Update() {
if (input.GetKey(KeyCode.UpArrow) == True) { // 윗쪽 화살표가 눌리면..
Rigidbody.AddForce(0f, 0f, speed); // speed만큼의 힘을 z축에 더한다.
}
키 입력
키 조작
키 입력은 누를 때, 누르고 있을 때, 뗐을 때 3가지 행동으로 조작할 수 있다.
설명 | |
---|---|
Input.anyKeyDown | 아무 키나 받으면 true |
Input.anyKey | 아무 키를 누르고 있을 때에만 true |
Input.GetKeyDown(KeyCode) | 키를 누르는 순간에만 true
KeyCode는 클래스. 해당 클래스 안에 키 지도를 찾아 넣는다. KeyCode.f1, KeyCode.A 등으로 키코드가 있다. 키코드는 유니티 문서를 참고하자. |
Input.GetKey(키코드) | 키를 누르고 있을 때 발생 |
Input.GetKeyUp(키코드) | 키를 눌렀다 떼는 순간에 true |
입력 매니저
Edit>Project Settings...에서 프로젝트 설정 창을 띄우고 Input>Axes에서 설정된 입력축들을 볼 수 있다. 별다른 처리를 하지 않아도 패드, 조이스틱 등에 대응되어 편리하다.
Input.GetAxis("키") | 키코드를 이용하면 무조건 해당 키를 눌러야 하기 때문에 조작키를 사용자가 변형하기 어렵다는 단점이 있다. 때문에 '입력이름'으로 지정하는 편이 유리하다.
"Horizontal", "Vertical" 등의 "키"가 들어간다. 양의 방향이면 1, 음의 방향이면 -1을 반환하며, 이 키는 입력매니저에서 설정한다.(아날로그 스틱에선 살짝 미는 값도 반영하여 0~1 사이의 값을 갖는다.) |
마우스 입력
누를 때, 누르고 있을 때, 뗐을 때 3가지 행동으로 조작할 수 있다.
설명 | |
---|---|
Input.GetMouseButtonDown(마우스코드) | 누를때 발생 |
Input.GetMouseButton(마우스코드) | 누르고 있을 때 발생 |
Input.GetMouseButtonUp(마우스코드) | 뗄 때 발생 |
코드 | 설명 |
---|---|
0 | 왼쪽버튼 |
1 | 우측버튼 |
버튼
위는 조작 자체에 대한 것. 일반적으로 버튼을 사용한다.
빠르고 여러 개의 조작키를 입력할 때 버튼이 적절한 듯하다.
Edit>Project Settings>Input Manager
에서 버튼세팅 가능. 기본적인 키입력이 들어있다. 코드가 아니더라도 간단하게 조작 가능.
Input.GetButton ("버튼명") 형식으로 사용한다. 마찬가지로 Down, Up 가능.
같은 이름으로 여러 디바이스의 입력을 설정할 수 있다. 키보드, 마우스, 컴퓨터 뿐 아니라 모바일에서도 버튼으로 대체하게끔.
새 버튼 만들기
Input Manager 위쪽의 Size를 늘려주면 그에 맞춰 버튼이 더 생긴다. 버튼의 이름, 다양한 속성을 변형할 수 있다.