Windows7에서 멀티 터치 애플리케이션 개발하기 (1)
지난 1월부터 계속해서 Windows7의 새로운 특징 중 하나인 멀티 터치에 대한 이야기들을 해 왔습니다. 윈도우7이 출시되면서 국내 수많은 디스플레이 업체들에게 환영을 받고 있습니다. 따라서 오늘은 처음으로 Windows7에서 멀티 터치 애플리케이션을 개발하는 데 필요한 정보 사항들을 살펴보도록 하겠습니다.
시작하기
Windows7의 멀티 터치를 사용하기 위해서는 멀티 터치를 지원하는 디스플레이가 있는 PC가 필요합니다. 현재 국내에서는 HP에서 TouchSmart PC 라는 이름은 All-In-One 방식 PC 와 HP 터치스마트 tx2-1000 노트북이 판매 되고 있습니다. HP Touch Smart PC와 같은 경우에는 현재 MBC 수요일과 목요일에 방송되는 ‘트리플’ 이라는 드라마에 나옵니다.
물론 한 번도 멀티 터치를 이용한 광고가 나오지 않지만요, 아무래도 PD나 작가들이 그 PC가 무엇을 하는 지 모르기 때문에 반영하지 않은 것 같습니다. 한편, 올 연말 쯤이나 내년 초 쯤이면 국내 삼성전자와 LG전자에서도 1-2 기종 정도 나올 예정입니다.
Windows7의 멀티 터치는 다른 말로, Windows Touch 이라는 이름으로 부릅니다. 이것은 마이크로소프트가 멀티 터치에 대한 브랜드를 가지기 위해 등록된 이름입니다. Windows7 Touch 애플리케이션을 시작하기 위해서는 MSDN의 Windows User Experience Interaction Guidelines (UX Guide) 의 Touch 섹션을 먼저 읽어 보시기 바랍니다.
왜냐하면, 어떠한 애플리케이션을 개발하려면, 먼저 사용자 경험과 디자인 요소를 파악하는 것이 중요합니다. 예를 들어, 터치에 최적화된 애플리케이션은 기존의 마우스나 펜으로 입력할 때 보다 입력 받는 면적이 좀 더 넓어야 합니다. 위에 보이는 점프 리스트를 살펴 보시면 우측 면이 멀티 터치를 고려하여 좀 더 넓게 손가락으로 누를 수 있도록 반영한 사용자 경험이라는 것을 알 수 있습니다.
Windows SDK
Windows7의 멀티 터치 애플리케이션 개발의 가장 기초적인 내용은 Windows Software Development Kit(곧 RTM 공개 예정)에 포함되어 있습니다. Windows7 운영체제에서 지원해주는 멀티 터치 제스처 및 조작, 관성 등을 보여주는 API 와 샘플이 포함되어 있습니다. 현재 Windows SDK에 들어 있는 샘플들을 다음과 같습니다.
Multi-touch Gestures Application (C++) | Win32 API을 이용하여 멀티 터치 제스처 메시지와 구성 설정 하는 방법을 보여줌 |
Multi-touch Gestures Application (C#) | C# 을 이용하여 멀티 터치 제스처 메시지와 구성 설정 하는 방법을 보여줌 |
Multi-touch Manipulation Application | Win32 애플리케이션에서 멀티 터치 이벤트를 핸들링하고 설정하는 방법을 보여줌 |
그 외에도 Windows7 에서 멀티 터치 애플리케이션을 동작하는 것을 보기 위해 실습을 할 수 있게 Hands On Lab 으로 구성해 놓은 것을 공개해 놓았습니다.
Multitouch Gestures | 이 실습은 애플리케이션이 멀티 터치 제스처로 어떻게 반응하는지를 파악할 수 있습니다. C++ 언어로 작성되어 있고 컬러 색깔로 된 사각형에 반응하는 데모를 볼 수 있습니다. |
Enhanced Multitouch Gestures | 이 실습은 앞에서 사용한 Multitouch Gesture 와 비슷한 구성이지만 좀더 제스처를 확장하고 렌더링을 할 수 있는 경험을 C++ 언어로 할 수 있습니다. |
Multitouch Scratchpad | 이 실습은 C# 언어로 애플리케이션이 터치 포인트로 하나의 윈도우에서 선을 그리움으로써 멀티 터치 입력으로 읽고 반응을 할 수 있도록 경험을 할 수 있습니다. 이 선들은 모두 각각 컬러 색깔로 반응합니다. . |
C# 언어를 사용한 멀티 터치용 스크래치 패드와 같은 경우에는 현재 .NET Framework 그 자체에서 멀티 터치를 지원하지 않고 C++ 언어로 된 라이브러리를 인터롭(Interop)해서 사용합니다. 그러한 샘플 라이브러리도 여기에 함께 공개되어 있는데, Windows Forms 과 .NET FX 3.5 SP1 기반으로 작성되어 있습니다.
다음 시간에는 Windows User Experience Interaction Guidelines (UX Guide) 에서 Touch Interaction 을 애플리케이션 상에서 어떻게 구현해야 하는지 알아보도록 하겠습니다. 이 글을 보신 분들은 위의 샘플들을 한번 동작해 보시고 궁금한 사항 있으시면 아래에 댓글 부탁 드립니다!
Comments
- Anonymous
September 05, 2011
2009년에 나왔네요...