본문 바로가기

TechLog

WP7 에뮬레이터에서 멀티터치 입력 장치 테스트하기

WP7 프로그램(WP7 프로그램뿐만 아니라 다른 모바일 플랫폼의 프로그램을 개발할 때도 마찬가지지만)을 개발할 때, 실제 WP7 기기가 있으면 구성된 UI를 테스트하는데 도움이 많이 된다. UI가 실제 기기에서 어떻게 보이는지 확인하는 것뿐만이 아니라, 사용자의 터치 입력 제스처에 프로그램이 어떻게 반응하는지를 테스트하려면 실제 기기를 사용하는 수 밖에 없다.

그렇지만 부득이하게 WP7 디바이스가 없는 상태에서도 개발을 진행해야 할 경우가 있을 것이다. 물론 에뮬레이터를 사용해서 개발을 진행하더라도 프로그램 자체의 기능을 테스트하는데에는 별 문제가 없다. 하지만, 멀티터치 입력에 대한 상호작용 기능을 개발하고 테스트해야 할 경우, WP7 에뮬레이터만으로는 멀티터치 입력을 테스트할 방법 자체가 없다. 윈도 비스타와 윈도 7은 멀티터치 입력 장치를 지원하고 있으며, PC에 멀티터치를 지원하는 입력 기기가 있을 경우(멀티터치를 지원하는 터치 스크린 등)에는 WP7 에뮬레이터에서도 멀티터치 입력을 올바로 처리해준다. 하지만, WP7 개발을 위해서 멀티터치를 지원하는 터치 스크린을 구매하느니 WP7 기기를 구매하는 편이 낫겠다고 생각하는 것은 비단 필자뿐만이 아닐 것이다. 아이폰 에뮬레이터의 경우 마우스만으로 멀티터치를 시험해볼 수 있는 기능이 포함되어 있는 것과 비교해보자면 좀 아쉬운 부분이다.

다행스럽게도, 윈도에서 여러 개의 마우스를 사용해서 가상의 멀티터치 장치를 구현해주는 프로그램이 존재한다. Multi-Touch Vista가 그것으로, 윈도 비스타 이상의 PC에 있는 입력 장치(가단 간단한 예로는 마우스)를 사용해서 멀티터치 입력 장치를 테스트 해 볼 수 있도록 해 준다.

Multi-Touch Vista를 사용해서 WP7 에뮬레이터에서 멀티터치 기능을 테스트해보도록 하자. 우선, 마우스가 두 개 필요하다. (노트북을 사용하고 있다면, 노트북에 내장된 포인팅 장치와 마우스 한 개를 사용하면 된다) 그리고 Multi-Touch Vista 사이트(http://multitouchvista.codeplex.com)에 접속해서 프로그램을 다운받는다. 다운받은 압축 파일을 풀면 다음과 같은 파일이 있는 것을 볼 수 있다.

 

clip_image002[4]

Multi-Touch Vista 프로젝트 파일을 다운받아 압축을 풀어놓은 결과

 

그런 다음 드라이버를 설치한다. ‘Driver\x32’ 폴더의 ‘Install driver.cmd’ 파일을 우클릭한 다음 [관리자 권한으로 실행] 메뉴를 선택하면 된다. (만약 운영체제가 64비트 버전이라면 ‘Driver\x64’ 폴더의 드라이버를 설치하면 된다) 잠시 시간이 흐르면 드라이버가 설치되고, 재부팅을 요구한다.. 설치가 완료되면 장치 관리자에 다음과 같이 [휴먼 인터페이스 장치 - Universal Software HID device] 항목이 추가되며, 시스템에 펜 및 터치 입력 장치 추가에 따른 유틸리티가 추가된다.

 

clip_image002[6]

새로 추가된 휴먼 인터페이스 장치 드라이버

 

위 화면에서 [Universal Software HID device] 항목을 우클릭하고 [사용 안 함] 메뉴를 클릭했다가, 다시 [Universal Software HID device] 항목을 우클릭한 다음 [사용] 메뉴를 클릭한다.

그리고 ‘Multitouch.Service.Console.exe’ 파일을 실행한다.

 

clip_image002[10]

Multitouch.Service.Console.exe 파일을 실행한 화면

 

간혹 위 파일에서 Input provider가 MultipleMice 외의 항목이 지정되었을 때에 보안 경고가 나타날 수 있는데, 이는 무시해도 된다. 올바로 MultipleMice 모드로 실행되면 화면에 붉은 점이 나타나는 것을 볼 수 있다.

그런 다음 Multitouch.Driver.Console.exe 파일을 실행한다. 다음과 같은 화면이 뜬다.

 

clip_image002[12]

Multitouch.Driver.Console.exe 파일을 실행한 화면

 

그리고 ‘Multitouch.Configuration.WPF.exe’ 파일을 실행한다.

 

clip_image010

Multitouch.Configuration.WPF.exe 프로그램의 실행 화면

 

Multitouch.Configuration.WPF.exe 프로그램이 실행되면, 왼쪽 리스트에서 [MultipleMice] 항목을 클릭하고, 가운데의 ‘>’ 표시를 클릭한 다음, 오른쪽 아래의 [Configure device] 버튼을 클릭한다.

 

clip_image012

Multitouch.Configuration.WPF.exe의 추가 옵션

 

위 화면에 나타난 옵션의 의미는, 현재 사용중인 시스템의 마우스를 터치 장치로 사용하겠다는 의미이다. 체크박스를 체크한 다음 [OK] 버튼을 클릭하자. 그러면 이제부터는 화면상에 표시되는 붉은 점이 터치 위치가 되며, 마우스를 움직여서 특정 지점을 클릭하면 윈도에서는 터치 장치를 통해 화면을 터치한 것으로 인식하게 된다.

 

clip_image014

터치 입력 장치가 활성화된 상태

 

터치 장치가 올바로 활성화되면, 화면에 위와 같은 반투명의 마우스 장치가 표시된다. WP7 에뮬레이터를 실행해서 멀티터치 기능을 테스트해 보자.

 

clip_image016

WP7의 Maps 앱에서 멀티터치를 테스트하고 있는 화면

 

위 화면과 같이 여러 개의 입력장치(마우스 혹은 터치패드 등)로 두 개의 붉은 점을 움직여서 멀티터치 기능을 테스트해 볼 수 있다. 만약 멀티터치 기능이 올바로 동작하지 않으면, 지금까지 실행한 모든 프로그램을 종료한 다음에 설정 과정을 반복해 보자.