본문 바로가기
Gesture UI

UX Design on KINECT

by Stan1ey 2011. 1. 16.
지난 몇 개월간 키넥트 플랫폼을 이용한 게임개발 프로젝트에 참여하면서 UI 설계를 담당했다. 인터넷 상의 리뷰를 보면 사용자들은 비교적 긍정적인 인상을 많이 받고 있는 것 같지만, 새로운 UI를 설계하려는 입장에서 마이크로소프트의 담당자들과 이메일을 주고받다보면 역시 새로 상용화된 기술답게 나름의 제약점이 많다.

홍보되는 것처럼 "사용자의 동작을 입체적으로 인식"한다고 하기에는 조금 기술적인 어폐가 있고, 일반적인 동작 UI 디자인 가이드라인 외에도 적외선 거리인식 센서의 입력값과 카메라를 통한 영상처리 결과가 키넥트 시스템을 통해서 어떻게 조합되는지를 이해하고 그에 맞춰 동작입력을 선택하는 게 중요하다고 하겠다. ... 쓰고보니 당연한 소리를. ;ㅁ; Kinect 센서의 구성이나 특성에 대해서는 예전의 블로그 글이나 인터넷 검색, 혹은 의외로 잘 퍼지지 않은 동영상 자료지만 유용한 정보가 상당히 많은 <Inside Xbox> 인터뷰들을 참고하시면 좋을 듯.

가장 중요한 점은, 사실 이 시스템에서 거리센서는 사용자의 몸 "영역"을 배경과 바닥으로부터 분리시키는 데에만 사용되고, 정작 팔다리를 인식하는 건 주로 카메라로부터의 영상처리에 의존하는 것 같더라는 것이다. 그러니 팔을 앞으로 뻗어 몸통을 시각적으로 가린다든가 하면 바로 자세인식에 문제가 생기고, 그러니 별도의 신호처리 없이 시스템에서 입력받을 수 있는 자세정보(각 부위의 위치와 각도)라는 것은, 카메라에서 봤을 때 큰대(大)자 자세에서 팔다리를 위아래로 휘젓는 정도다. (이보다 복잡한 동작이 아예 인식되지 않는 건 아니지만, UI는 고사하고 게임용으로 쓰기에도 오인식률이 높다.) 결국 제대로 3차원 인식이 아닌 2.5차원 인식방식이다보니 생기는 이상과 현실의 괴리랄까.

그렇다보니 그 멋져보이는 자세인식은 직접적으로 UI에 쓰이지 않고, 실제로는 인식된 특정부위(예: 손)의 위치를 커서위치에 대응시킨다든가, 특정부위까지의 거리변화를 입력으로 삼는다든가(예: 팔 휘둘러 내밀기) 하는 식으로만 매핑이 되고 있다. 사실 그것만으로도 기존에 없던 제법 재미있는 UI를 만들 수는 있지만, 실제로 브레인스토밍 중에 나왔던 수많은 멋진 동작 UI 아이디어들을 추려내다 보면 아쉬움이 이만저만이 아니다.

Gesture Command by Swipe Gesture Command by Hand-Cursor

참여했던 프로젝트에서는 이런저런 제약점들을 피해서 나름대로 Wii Remote로 프로토타입도 만들어가며 최선의 UX 설계를 하려고 애썼는데, 실제로 제품이 출시되는 올 하반기가 되어야 이런저런 이야기를 풀어놓을 수 있을 듯. 그때쯤 되면 죄다 당연한 소리가 될지도 모르지만.

얼마 전 Jacob Nielsen도 <Kinect Gestural UI: First Impressions>라는 컬럼을 게재했는데, 키넥트 플랫폼에서 사용성을 고민하고 있다면 대체로 유용한 관점이라고 생각한다. 보아하니 나중에 유료 컨텐츠/세미나로 팔아먹기 위해서 말을 아낀 것 같기는 한데, 그렇다고 해도 게임 UX의 큰 목적(개인적으로, 재미와 탐사는 게임 뿐만 아니라 그 UI를 사용하면서도 느낄 수 있어야 한다고 생각하기에)이라든가 동작입력의 특성(중력장 안에서 상하움로 움직인다는 건 평면 상에서 마우스를 굴리는 것과는 또 다르다)을 고려하지 않은 지나치게 전통적인 (그리고 '웹'스러운) 발언들은 좀 아쉽다. 또한 현재 출시되어 있는 키넥트 기반 게임들 중에서 가장 나은 사용성을 보이고 있는 <Dance Central>의 경우는 상당한 시행착오와 고민 끝에 나온 나름의 최적안이라고 볼 수 있는데, 그 부분이 약간 평가절하되어 있는 부분은 너무 평가자의 시점에서만 이야기하고 있다고 느껴졌다. 그런 건 UI에 관심만 있고 실제로 책임지고 디자인하지는 않는 사람이 쉽게 취하는 입장인데.



어쨌든 사람들이 이 KINECT 플랫폼에 대해서 갖고있는 질문은 "키넥트 게임이 재미있나?" 라는 것과 "키넥트 기반의 동작 UI는 쓸만한가?"로 정리된다.

(1) 게임은 재미있나: 재미있다. 그런데 '어떤' 게임이 재미있는가에 대해서는 아직 장르를 많이 타고, 그 장르에서 어떤 방식으로 KINECT 플랫폼을 활용하는지는 현재 시행착오가 진행 중이다. 관련 리뷰들을 보면 알겠지만 마이크로소프트에서 번들로 주는 게임들보다 오히려 <Dance Central>의 리뷰점수가 높고, 더 재미있다. 하지만 그 게임은 아직 KINECT를 100% 활용하지 않고 있다. KINECT 센서를 보면 이런저런 가능성은 높은데, 단가를 낮추기 위해서 프로세서를 빼는 바람에 쓸 수 있는 입력값은 정말 단순한 내용 밖에 없다. 그런 입력값을 처리하는 엔진이 탑재된 게임이 나오면 (혹은 MS에서 API를 업데이트해주면) 그 잠재력이 최대한 발휘되리라 생각한다.

(2) UI로 쓸만한가: 한계가 뚜렷하다. 기술 자체라기보다는 플랫폼에 의한 한계가 많은데, 이를테면 320x240의 해상도로 전신을 잡으면 손/발/머리의 움직임은 사실 거의 잡지 못하고, 중첩이나 회전을 감지하는 건 상상도 못한다. 결국 앞에서 말했듯이 UI에 사용되는 동작명령도 팔다리를 허우적거리는 수준으로 큼직큼직하게 만들어야 하고, 팔다리가 신체의 다른 부위를 가리지 않아야 하기 때문에 흔히 비교되곤 하는 영화 <Minority Report>의 동작 UI와는 상당한 거리가 있다. MS에서도 이 문제를 해결하려고 해상도를 두 배(640x480)로 늘리겠다고 했지만, 그래도 손동작을 UI에서 쓸 수 있는 수준으로 인식하는 건 어렵다고 본다.

Body Tracking on KINECT
(한 가지 첨언하자면, 위의 해상도는 소프트웨어적으로 조정이 가능한 각해상도 angular resolution 이다. 따라서 이론적으로는 일시적으로 특정부위 - 얼굴이나 손 - 에 해상도를 집중해서 더 자세한 자세정보를 얻는 것도 가능하지만, 현재 API에서는 지원하지 않는다.)

결국 이런 방식의 동작인식 시스템이 주요 UI 장치로 쓰일 수 있는 경우는 무척 좁을테고, 여기에 관심을 보이는 실무 디자이너들에게 돌아올 궁극의 질문은 이번에도 꽤나 신랄할 것이다: 그 센서로 인한 단가상승만큼 중요하고 필요한 조작인가? ... 여기에 확실히 그렇다고 할만한 물건은 아니다. 단지 과거 터치스크린이 그랬고 전자나침반도 그랬듯이, 제한된 용도일지라도 그 유용함이 확실하다면 남들보다 앞서서 고려해야 하는 세상이라는 점을 강조하는 수 밖에.

개인적으로 흥미롭게 보고있는 것은 키넥트 출시 이후에 줄줄이 등장하고 있는 해킹 사례들이다. 특히 기존에 동작/영상인식을 하던 사람들이 가장 신나하는 것같고, 그외에 컴퓨터 그래픽에서도 3차원 영상으로만 가능한 재미있는 사례가 속속 나오고 있다. 하지만 진짜 기대되는 것은 이 Kinect와 Wii Remote를 동시에 사용하는 (해킹) 어플리케이션이다.

키넥트는 전신의 움직임을 잡아내는 데에는 유용하지만 메뉴를 선택한다든가 총을 겨냥해서 쏜다든가 하는 세밀한 움직임이 불가능하다. 거기에 그걸 제대로 해줄 수 있는 장치(게다가 가상의 물체에 매핑될 수 있는 물리적 장치)를 더한다면 그야말로 동작인식에 날개를 단 형국이 아닐까. 이미 둘 다 해킹이 되어 PC에서 연동이 되고, 특히 Flash 등 인기있는 시각화 도구와도 바로 연결이 된다. 바로 며칠 전에 변형된 게임에 이를 적용한 사례가 올라오긴 했지만, 단순히 입력값을 조작에 연결시킨 수준일 뿐 각 장치의 잠재력과 시너지를 충분히 발휘했는지는 모르겠다.



아마 기존의 컨트롤러와 Kinect를 동시에 (아마도 Kinect는 보조적/선택적인 입력으로) 사용하는 Xbox용 게임이 올해 중으로는 발표되리라는 생각이 들지만, 우선은 그 전에 오는 5월의 CHI 2011 학회에서 그런 조합이 몇 건 나와주지 않을까 하는 기대를 하는 중이다.

Wii Remote, Kinect, 3D TV, ... 판이 점점 재미있게 돌아가고 있다.




... 뭐가 "짧게 짧게"냐. ㅡ_ㅡa
반응형