ShovelingLife
A Game Programmer
ShovelingLife
전체 방문자
오늘
어제
  • 분류 전체보기 (1072)
    • 그래픽스 (57)
      • 공통 (19)
      • 수학 물리 (22)
      • OpenGL & Vulkan (1)
      • DirectX (14)
    • 게임엔진 (183)
      • Unreal (69)
      • Unity (103)
      • Cocos2D-X (3)
      • 개인 플젝 (8)
    • 코딩테스트 (221)
      • 공통 (7)
      • 프로그래머스 (22)
      • 백준 (162)
      • LeetCode (19)
      • HackerRank (2)
      • 코딩테스트 알고리즘 (8)
    • CS (235)
      • 공통 (21)
      • 네트워크 (44)
      • OS & 하드웨어 (55)
      • 자료구조 & 알고리즘 (98)
      • 디자인패턴 (6)
      • UML (4)
      • 데이터베이스 (7)
    • 프로그래밍 언어 (348)
      • C++ (167)
      • C# (90)
      • Java (9)
      • Python (33)
      • SQL (30)
      • JavaScript (8)
      • React (7)
    • 그 외 (9)
      • Math (5)
      • 일상 (5)

블로그 메뉴

  • 홈
  • 태그
  • 방명록

공지사항

  • Source Code 좌측 상단에 복사 버튼 추가 완료
  • 언리얼 엔진 C++ 빌드시간 단축 꿀팁
  • 게임 업계 코딩테스트 관련
  • 1인칭 시점으로 써내려가는 글들

인기 글

태그

  • 파이썬
  • 티스토리챌린지
  • 포인터
  • C++
  • c#
  • C
  • 프로그래머스
  • 알고리즘
  • 백준
  • string
  • 언리얼
  • 클래스
  • 오블완
  • Unity
  • 그래픽스
  • SQL
  • 유니티
  • 배열
  • 문자열
  • 함수

최근 댓글

최근 글

티스토리

hELLO · Designed By 정상우.
ShovelingLife

A Game Programmer

게임엔진/Unity

[Unity] 키보드와 마우스 입력받기

2022. 12. 4. 10:40

1. GetAxis, GetAxisRaw

InputManager에 입력된 키를 누를 때, 값을 반환한다. 이때, 반환되는 값은 -1 ~ 1사이가 반환된다.

nagative button을 누르면 음수가, positive button을 누르면 양수가 반환된다. 아무것도 누르지 않는다면 0이 반환된다.

물체를 이동시키고 싶을 때 사용한다.

GetAxis() -1 ~ 1까지의 실수를 반환
GetAxisRaw() 버튼을 눌렀을 때 1, -1을 반환. 그렇지 않다면 0을 반환

2. GetButton

InputManager에 입력된 키를 누를 때, 참, 거짓을 반환한다.

키를 눌렀을 때는 true를 반환, 그렇지 않다면 false를 반환한다.

GetButton() 키를 누르는 시간만큼 true를 반환
GetButtonDown() 키를 눌렀을 때, 딱 한번 true를 반환
GetButtonUp() 키를 누르다 땠을 때, 딱 한번 true를 반환

3. GetKey

keycode에 의해 지정된 키을 누를 때, 참, 거짓을 반환한다.

키를 눌렀을 때는 true를 반환, 그렇지 않다면 false를 반환한다.

GetKey() 키를 누르는 시간만큼 true를 반환
GetKeyDown() 키를 눌렀을 때, 딱 한번 true를 반환
GetKeyUp() 키를 누르다 땠을 때, 딱 한번 true를 반환

 

지정된 키코드는 다음에서 확인할 수 있다.

docs.unity3d.com/kr/530/ScriptReference/KeyCode.html

4. GetMouseButton

마우스를 눌렀을 때, 참, 거짓 값을 반환한다. 키보드가 아닌 휴대폰에서도 사용 가능하다.

마우스를 눌렀을 때는 true를 반환, 그렇지 않다면 false를 반환한다.

0은 좌클릭, 1은 우클릭, 2는 중앙 휠을 나타낸 것이다.

.GetMouseButton() 키를 누르는 시간만큼 true를 반환
GetMouseButtonDown() 키를 눌렀을 때, 딱 한번 true를 반환
GetMouseButtonUp() 키를 누르다 땠을 때, 딱 한번 true를 반환

 

※InputManager는 Edit>Project Setting>Input Manager에서 확인할 수 있다. InputManager에 지정하고 싶은 키의 수를 늘리고 싶다면 Axe의 size를 늘리자.

 

사용 예시

주로 Input과 곁들여 사용한다.

2번째와 3번째는 인자를 다르게 작성하였지만 같은 기능을 한다.

Input.GetAxisRaw("Horizontal") //왼쪽 화살표를 누르면 -1, 오른쪽 화살표를 누르면 1 반환
Input.GetKeyDown(KeyCode.Space) //스페이스 바를 누르면 딱 한번 true 반환
Input.GetKeyDown("Space") //상동
Input.GetMouseButton(0) //좌클릭하는 동안 true 반환

출처 : [유니티] 2. 키보드 입력받기 (Input) (tistory.com)

저작자표시 (새창열림)

'게임엔진 > Unity' 카테고리의 다른 글

[Unity] 강체(RigidBody) AddForce에 대한  (0) 2022.12.07
[Unity] 트랜스폼을 이용해서 AI 만들기  (0) 2022.12.07
[Unity] 입력 바인딩 시스템 만들기  (0) 2022.11.30
[Unity] 프러스텀과 오클루전 컬링 (Frustum & Occlusion Culling)  (0) 2022.11.29
[Unity] 셰이더 Shader  (0) 2022.10.30
    '게임엔진/Unity' 카테고리의 다른 글
    • [Unity] 강체(RigidBody) AddForce에 대한
    • [Unity] 트랜스폼을 이용해서 AI 만들기
    • [Unity] 입력 바인딩 시스템 만들기
    • [Unity] 프러스텀과 오클루전 컬링 (Frustum & Occlusion Culling)
    ShovelingLife
    ShovelingLife
    Main skill stack => Unity C# / Unreal C++ Studying Front / BackEnd, Java Python

    티스토리툴바