안녕하세요
ITSkeleton 입니다.
오늘은
유니티에서 자주사용하는
Input 함수 중에
Getkey부분에 대하여 알아보려 합니다.
먼저
간단히 설명해 드리겟습니다.
GetKey
-해당되는 키를 누르고 있을 경우 True를 반환해 줍니다.
GetKeyDown
-해당되는 키를 눌렀을때 True를 반환해 줍니다.
GetKeyUp
-해당되는 키를 눌렀다 땠을때 True를 반환해 줍니다.
말이 생각보다 헷갈리게 되어있지요?
간단하게 생각한다면 정말 간단한 방식입니다.
간단히 코드로 보면서 설명해 드리겠습니다.
Input.GetKey("a")
이렇게 쓴다면
'a' 키를 누르고 있으면 계속해서 작동을 합니다.
꾸욱 누르고 있을 수 있다는거죠.
간단히 FPS게임을 예로 들자면
'a'키는 왼쪽으로 가는 키로 많이 사용합니다.
위코드를 사용하고 'a'키를 누르고 있으면
왼쪽으로 계속해서 이동하는거죠!
Input.GetKeyDown("a")
를 사용한다면 'a'키를 꾹 누르고 있더라도
한번 작동한뒤 다시 누를때까지 작동하지 않습니다.
키를 눌렀을경우에 딱 한번만 작동하는 것이죠.
Input.GetKeyUp("a")
를 사용하면 'a'키를 눌렀다가 땔경우에 한번. 발생합니다.
어렵지 않지요?
간단한 테스트 코드를 드리겠습니다.
메소드로 작성된 코드입니다.
Update 부분에 호출하시면 작동확인을 하실 수 있습니다.
void KeyCheck()
{
if(Input.GetKey("a"))
{
Debug.Log("KeyCheck : a");
}
if(Input.GetKeyDown("s"))
{
Debug.Log("KeyCheck : s");
}
if(Input.GetKeyUp("d"))
{
Debug.Log("KeyCheck : d");
}
}
위의 코드를 이용하여
로그창을 보시며 한번 확인해 보세요!