2012-03-12 4 views
1

Kinect 센서는 초당 많은 이벤트를 발생 시키며, 몇 프레임만으로 정교하게 만들지는 못한다면 (예 : 실제 3D 캐릭터를 애니메이션하려는 경우) 막히게됩니다.Kinect 이벤트 건너 뛰기

사용자 인터페이스를 차단하지 않고 적절한 수의 이벤트 만 처리하는 가장 좋은 방법은 무엇입니까?

감사합니다.

+0

사용중인 Kinect SDK는 무엇입니까? –

+0

공식 Kinect SDK 1.0 – abenci

답변

0

이벤트 메서드를 사용하는 대신 루프에서 프레임을 요청하는 것이 좋습니다. 단지 전화 는 애니메이션 루프에서이 작업을 수행하려면 :

sensor.DepthStream.OpenNextFrame(millisecondsWait);

또는 :

sensor.SkeletonStream.OpenNextFrame(millisecondsWait); 

또는를 :

sensor.ColorStream.OpenNextFrame(millisecondsWait); 

이벤트 기반 프로그래밍은 훌륭하지만 당신은 같은 문제로 실행하면 당신은 그것이 필요할 때 함수를 호출하는 것이 더 낫다는 것을 언급한다.

0

정말 빠르고 정교한 (예 : 복잡한 60fps 3D 이미지) 애니메이션을 만들면 카메라에서 동시에 이미지를 가져 오는 데 걸리는 시간이 렌더링에 융기를 유발할 수 있다고합니다.

렌더링과 Kinect 프로세싱/폴링을 별도의 스레드로 분할하려고합니다. 그런 접근 방식으로 30fps 이벤트 중심 모델을 계속 사용할 수도 있습니다.