반응형
키보드 입력을 감지해야될 때는 아주 많다.
유니티에서는 보통 Input.GetKey 함수를 사용하게 되는데
이 함수의 단점은... 프로그램이 포커스 잡혀있지 않으면 반응을 안한다는 점이다.
이럴 때 해결방법은 GetAsyncKeyState 함수를 사용하는 것.
유니티에서도 사용이 가능하다.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
|
public enum MyKeyCode
{
VK_LEFT = 0x25,
VK_UP = 0x26,
VK_RIGHT = 0x27,
VK_DOWN = 0x28
}
[DllImport("user32.dll")]
public static extern short GetAsyncKeyState(int button);
static void Main(string[] args)
{
if (GetAsyncKeyState((int)MyKeyCode.VK_LEFT) == -32767)
{
//LeftMove();
}
}
|
cs |
위 코드에서 -32767은 키보드가 눌린 시점을 의미한다.
키 코드는 여기를 참조하면 된다.
반응형
'Unity' 카테고리의 다른 글
[무료 에셋 정보] Bull Tank (0) | 2024.12.15 |
---|---|
HoloLens2 USB 연결 안될때 에러 해결법(DEP6957) (0) | 2022.03.03 |
HoloLens2 CS0246: The type or namespace name 'CloudSpatialAnchor' could not be found (are you missing a using directive or an assembly reference?) 에러 해결법 (0) | 2022.02.28 |
TextMesh Pro UGUI 에서 Raycast Target 끄는 방법 (1) | 2022.02.15 |
유니티 바탕화면 보이는 투명한 앱 만들기 (2) | 2021.11.01 |
댓글