Unity - 키보드 및 마우스 입력

TXMAY·2023년 7월 11일
1

Unity 튜토리얼

목록 보기
5/33
post-thumbnail

이제 유니티를 활용하는 강좌로 진입한 것 같다.
이번 강좌는 키보드와 마우스 입력을 받아서 오브젝트를 이동하는 강좌다.


Input : 게임 내 입력을 관리하는 클래스

키 입력

접미사에 Down이 붙으면 누를 때 True, Up이 붙으면 뗄 때 True, 안 붙으면 누르는 동안 True

  • anyKey : 아무 입력을 받으면 True(누르면 계속 인식함)
  • GetKey(키보드 키) : 키보드 입력을 받으면 True
    • KeyCode.키보드 키 : 해당 키보드 키
  • GetMouse(번호) : 해당 번호의 마우스 입력을 받으면 True
    • 0 : 마우스 왼쪽 버튼
    • 1 : 마우스 오른쪽 버튼

버튼 설정

버튼 설정은 'Edit -> Project Settings -> Input Manager'에서 할 수 있다.

  • Size : 버튼 개수
  • Name : 축 이름
  • Negative Button : 축을 - 방향으로 미는 데 사용하는 데 사용할 버튼
  • Positive Button : 축을 + 방향으로 미는 데 사용하는 데 사용할 버튼
  • Alt Negative Button : 축을 - 방향으로 미는 데 사용하는 데 사용할 대체 버튼
  • Alt Positive Button : 축을 + 방향으로 미는 데 사용하는 데 사용할 대체 버튼
  • Gravity : 아무 입력도 없을 때 축이 중립(0)으로 떨어지는 속도(초)
  • Dead : 아날로그 장치의 값을 받기 시작할 최솟값(이 값 이하의 값은 null로 인식함)
  • Sensitivity : 디지털 장치가 축이 대상값으로 향하기 위한 속도(초)
  • Snap : 활성화할 경우, 반대 방향을 누르면 축이 0으로 초기화됨
  • Type : 축을 제어할 입력 타입
    • Key or Mouse Button : 키보드 또는 마우스 버튼 입력
    • Mouse Movement : 마우스 이동
    • Joystick Axis : 조이스틱 축
  • Axis : 축을 제어하는 기기의 축
  • JoyNum : 축을 제어하는 조이스틱

버튼 입력

GetButton(버튼명) : 버튼 입력을 받으면 True

축 입력

  • GetAxis(버튼명) : 수평, 수직 입력을 받으면 float(가중치 있음)
  • GetAxisRaw(버튼명) : 수평, 수직 입력을 받으면 int(가중치 없음)

오브젝트 이동

Transform : 오브젝트 형태에 대한 기본 컴포넌트
오브젝트는 변수 transform을 항상 가지고 있음
Translate(벡터) : 벡터값을 현재 위치에 더하는 함수
벡터 : 방향과 그에 대한 크기 값
스칼라 : 순수한 값
Vector차원(2, 3 ...) 벡터명 = new Vector차원(축 값1(x), 축 값2(y), ...)로 선언


사실 이 부분이 유니티를 접었던 이유 중의 하나이기도 하다.
이동하는 게 뭔가... 뭔가다.그게 뭔데
너무 귀찮게 이동해서 그랬던 거 같긴 한데 이제는 뭐 그렇게 귀찮은 거 같지는 않다.

profile
게임 개발 공부하는 고양이

0개의 댓글