오랫만에 키넥트랑 만나서 작업을 진행중에 있다.

 

그래서 오늘의 주제도 당연히 키넥트 함수 관련된 이야기이다.

 

처음 키넥트를 초기화 할때 NuiInitialize()를 통해서 RGB, Depth or Depth with Player Index, 그리고 Skeleton 의 설정을 할수가 있다.

 

그리고 키넥트를 종료시 NuiShutdown() 과 Release()를 통해 키넥트는 완전히 종료가 된다.

 

 

 

하지만, 지금 내가 하고 있는 작업에서는 사용자가 직접 키넥트를 종료시켰다가 다시 실행시키기를 반복할수 있어야 한다.

 

이때 발생 하는게 NuiInitialize() 뻑 (자칭) 이 되겠다.

 

NuiInitialize() 뻑이 나게되면 증상은 아무런 반응이 없이 프로그램은 저~기 안드로메다로 떨어지고 만다. 결국 종료..

 

이러한 문제점을 해결하기위해 3시간동안의 고군분투..

 

 

 

답은 여기 있었다.

 

(링크)http://www.microsoft.com/en-us/kinectforwindows/develop/release-notes.aspx#_6._known_issues

 

 

 

이곳에 들어가면 여~러가지 Release Notes Information 이 있는데, 그중에서 C++ 란에 가게되면 정확히 명시가 되어있다.

 

프로그램을 시작할때에는 SetDeviceStatusCallback 을 반드시  호출해야 한다고 말이다.

 

그리하여 문제 해결..!! 푸하~

 

 

 

거참.. 왜 프로세스를 이렇게 만들어놓았을까.. 라는 생각과 해결했다! 라는 생각이 교차되면서 뭔가 허무하기도 했다.

 

그리고 드는 생각이 Kinect SDK도 역시 마소 천재들이 만들지만 그사람들도 사람이구나.. 라는 생각 들었다.

 

그 누구든 완벽할수는는법!! 완벽해지려고 하는것일뿐..

 

 

 

 

이상 끗.

 

 

Posted by Tommy™
,