UNITY 에서 보통 어떤 입력을 통해 뭔가를 하게 될때 아래와 같은 식으로 된다.
if (Input.GetKey(KeyCode.W))
POS.y = 100.0f;
if (Input.GetKey(KeyCode.A))
POS.x = -100.0f;
if (Input.GetKey(KeyCode.S))
POS.y = -100.0f;
if (Input.GetKey(KeyCode.D))
POS.x = 100.0f;
해당 코드처럼 키에따라 각 위치를 설정해주는 코드이다.
그런데 이렇게 코딩을 해주면 NGUI의 INPUTFIELD에서 글을 작성할때도 적용이된다.
이 부분을 막아주려면 아래와 같이 하면된다.
if (UIInput.selection == null )
{
if (Input.GetKey(KeyCode.W))
POS.y = 100.0f;
if (Input.GetKey(KeyCode.A))
POS.x = -100.0f;
if (Input.GetKey(KeyCode.S))
POS.y = -100.0f;
if (Input.GetKey(KeyCode.D))
POS.x = 100.0f;
}
NGUI 의 UIInput에 선택된게 있다면 아래코드를 실행하지 않도록 하는 방법이다.
구글링하면 UGUI에서도 방법이 있더라.
반응형
'Programming > 프로그래밍' 카테고리의 다른 글
[Unity] 커스텀 윈도우 만들기 (0) | 2022.05.19 |
---|---|
[Unity] 코드로 씬에 있는 오브젝트 선택하기(select object in hierarchy) (0) | 2022.01.10 |
[C++] string 문자열 입력받기 (0) | 2021.01.13 |
비주얼 스튜디오 인텔리센스 완료모드 (0) | 2020.07.14 |