유니티 키보드 입력으로 오브젝트 이동시키기

김찬수·2023년 5월 9일
0

Unity

목록 보기
4/15

유니티에서 오브젝트를 입력값에 따라 이동시키는 방법에는 여러가지가 있으니, 기록해놓고 필요할 때 마다 보고 상황에 맞는 방법을 선택할 생각이다.

키보드의 입력은 Down, Hold, Up 이 세 가지 과정으로 나누어져서 처리된다.

  • Down은 키보드를 누르는 순간
  • Hold는 누른 상태를 유지하는 동안
  • Up은 키보드에서 손을 떼는 순간

하지만 매번 키 입력을 받아와서 이동 처리를 하면 코드도 길어지고, KeyCode의 입력을 일일히 구현하는 것은 해당 키를 입력했을 때만 작동하며 게임 패드의 입력을 구현하게된다면 따로 구현해야 하지만 GetAxis 함수를 사용하면 별도의 구현없이 게임 패드의 이동 입력까지 자동으로 지원한다.

GetAxis : GetAxis는 -1과 1 사이의 실수값을 리턴하고, 기본적으로 0의 값을 가진 함수다. 대표적으로 Horizontal과 Vertical에 대한 값을 받아올 수 있다.

GetAxisRaw : GetAxis와 비슷한 함수다. 둘의 차이점은 GetAxis는 실수값을 리턴해 부드럽게 값을 받아오는 반면 GetAxisRaw는 정수값을 리턴해 즉시 값을 받아온다.

  • 보통 게임 컨트롤 환경에서 이동과 관련된 조작은 GetAxis, 스킬 사용 등 기능적 조작은 GetAxisRaw를 사용한다.

    아래와 같이 rigidbody를 이용해서 이동시킬수도 있다.

초보 개발자가 기억이 나지 않을 때 꺼내어 보기 위해 기록하는 공간입니다. 틀린 점이 있다면 댓글로 알려주시면 정말 감사하겠습니다.

profile
프로그래머 지망생

0개의 댓글