2011-06-22 9 views
6

¿Alguien sabe algo sobre el uso de la entrada de Kinect para Unity3d con el SDK oficial? Me han asignado un proyecto para tratar de integrar estos dos, pero mi súper no quiere que use las cosas abiertas de Kinect. La última noticia del sitio de Unity fue que Kinect SDK requiere 4.0 .Net y Unity3D solo requiere 3.5Kinect SDK oficial y Unity3d

¿Soluciones provisionales? Apúntame hacia los recursos si sabes algo al respecto, por favor.

Respuesta

7

Los enlaces de OpenNI para Unity son probablemente la mejor manera de hacerlo. El esqueleto NITE es más estable que el Microsoft Kinect SDK, pero aún requiere calibración (PrimeSense mencionó que pronto tendrán un esqueleto sin calibración).

Hay enlaces con OpenNI desde el Kinect SDK, que hacen que el trabajo de Kinect SDK como SensorKinect, este módulo también expone El KinectSDK libre de calibración esqueleto como un módulo OpenNI:

https://www.assembla.com/code/kinect-mssdk-openni-bridge/git/nodes/

Debido a que el KinectSDK también proporciona tobillos y muñecas, y OpenNI ya lo soportaba (aunque NITE no lo soportaba) todas las cosas de OpenNI, incluidas las plataformas de caracteres de Unity que incluían tobillos y muñecas, simplemente funcionaban y no tenían calibración. Los enlaces KinectSDK para OpenNI también admiten el uso del esqueleto y los rastreadores de mano de NITE, con una advertencia, parece que la detección de gestos NITE aún no funciona con Kinect SDK. La solución al uso de KinectSDK con handGenerator de NITE es utilizar un seguimiento sin esqueleto para proporcionarle un punto de mano. Desafortunadamente, usted pierde la capacidad de seguir las manos cuando su cuerpo no es visible para el sensor.

Aún así, el esqueleto de NITE parece más estable y responde mejor que el KinectSDK.

+0

Amir! Gracias. Hemos configurado con OpenNI-Nite, y estoy siguiendo el módulo experimental de Tomoto Washio y las listas de correo de los Grupos de Google. Encantado de verte aquí, todos los pasantes somos grandes admiradores de tu trabajo, asumiendo que eres el Amir de la fama de Unity. Este es un gran resumen de los desarrollos desde el lanzamiento de MS SDK. –

+0

hoy en día http://zigfu.com/ utiliza tanto openni como primesense, aunque se paga. – cregox

4

¿Qué cantidad de datos de Kinect sin procesar necesita? Para un problema limitado, como la articulación de las extremidades, ¿ha pensado en utilizar un esquema de comunicación agnóstico como TcpClient? Simplemente cree un servidor TCP simple, en .NET 4.0, que enlace al Kinect SDK y extraiga paquetes con la información que necesita cada 30ms o algo así. Luego solo escriba un cliente de recepción en Unity. Tuve un problema similar con un SDK diferente. No he probado el Kinect, así que tal vez mi sugerencia es exagerada.

Si desea datos de profundidad/color en tiempo real, es posible que necesite algo un poco más rápido, tal vez usando Pipes?

+0

Gracias. Esto es algo bueno para investigar. Creo que en este momento he convencido a mi jefe para que nos permita desarrollar algo con OpenNI, pero en este momento no necesitamos mucho del Kinect para que sus pensamientos sean apreciados. –