Kinect Hacking (Català)

No ha estat una setmana particularment bona per als hackers, amb les crítiques a l’procés d’obrir una plataforma de maquinari pels seus llaços amb la pirateria. No obstant això, la recent enginyeria inversa aplicada a l’Kinect de Microsoft demostra de forma efectiva com el hacking pot liderar la innovació en el homebrew sense que això tingui cap impacte en el negoci de la gent que treballa en la indústria de l’videojoc.

Es va fer enginyeria inversa a el maquinari de Kinect als pocs dies del seu llançament perquè funcionés amb un PC, amb l’hacker Hector Martin (membre de el grup fail0verflow i per tant objectiu de la demanda de Sony) revelant que Microsoft no havia fet res per protegir el maquinari de ser utilitzat en qualsevol altra plataforma que tingui la connexió USB necessària (un hack per a PS3 podria aparèixer en qualsevol moment, de fet). Kinect ha estat una plataforma oberta des del primer dia, sent la creació d’uns drivers d’interfície l’única tasca que els hackers havien de realitzar.

Microsoft ha reconegut que té plans per portar Kinect a el PC, però les credencials per al homebrew de la plataforma van rebre un dur revés quan els arquitectes tecnològics de la tecnologia base – la companyia israeliana PrimeSense – van publicar uns drivers oficials per Kinect juntament amb la forma d’integrar-lo en el seu propi sistema de middleware, NITE: l’anomenada iniciativa OpenNI. En aquest punt qualsevol podria dir que el hacking de Kinect es convertia en una cosa obsolet per deixar pas a una nova plataforma amb missatges públics programades pels creadors de la tecnologia original.

Aquestes eines, per descomptat, proporcionen un gran avanç a la comunitat. El programari NITE, per exemple, interpreta les dades de profunditat de Kinect i permet reconeixement d’esquelet, entre altres coses. En poques setmanes, usar Kinect en un PC passar de ser un hack bàsic a alguna cosa molt, molt més complet – les eines hi són per permetre als desenvolupadors homebrew crear les seves pròpies aplicacions i jocs amb “interfície natural d’usuari”.

:: Com completar tots els desafiaments de Fortnite

Una de les primeres donem veritablement impressionants que demostren el potencial de la tecnologia va ser la demo de càmera de vídeo 3D d’Oliver Kreylos. En aquest genial experiment va combinar la imatge de la càmera RGB convencional amb les dades de profunditat per produir una càmera web amb profunditat 3D que també pot usar-se per mesurar de forma precisa objectes. L’única limitació que podem veure és que només hi havia un set de dades de profunditat, amb la qual cosa un objecte que estava darrere d’un altre no es pot veure, per exemple. Malgrat que hi va haver gent que va afirmar que no era possible, Kreylos va millorar el seu hack perquè funcionés amb dos sensors Kinect i llavors la noció d’un espai virtualitzat en 3D gairebé del tot va esdevenir una realitat.

3dcam1
3dcam2

Les donem d’Oliver Kreylos usant un Kinect (esquerra) i dos (dreta) mostra com la càmera i les dades de l’sensor de profunditat es poden unir per crear una vista 3D d’l’entorn.

Amb el llançament dels drivers oficials de Kinect i la iniciativa OpenNI no va passar molt temps fins que els desenvolupadors homebrew van començar a experimentar amb les possibilitats d’integrar la càmera amb els jocs existents per a PC. Per a això es va publicar el FAAST (Flexible Action and Articulated Skeleton Toolkit), un conjunt d’eines de programari que permeten a qualsevol amb els coneixements necessaris remapear les dades d’esquelet de Kinect als tradicionals inputs de teclat i ratolí.

Per ara ja hem vist diversos jocs adaptats amb aquest sistema: Super Mario Bros amb funcionalitat Kinect i World of Warcraft amb un control basat en una sèrie de limitats gestos. Demize2010 va portar aquest concepte una mica més lluny, combinant Kinect i un Wiimote per permetre que els shooters operin de forma més efectiva.

En tots els hacks que hem vist fins ara a la implementació jugable potser sigui el més fluix. Els jocs es construeixen de forma intrínseca al voltant dels seus esquemes de control, i la idea de ficar amb calçador un sistema completament diferent basat en el seguiment de el cos o en gestos simplement no funciona. Poc es pot aconseguir quan literalment es remapean els controls existents a les dades de Kinect, i els problemes de lag són clarament visibles.

Les donem també il·lustren un parell de coses més. Primer, els jocs realment necessiten crear-se de zero per tenir en compte les capacitats de Kinect – i, per descomptat, les seves limitacions.Segon, els èxits dels desenvolupadors de Xbox 360 a l’aconseguir que els seus jocs funcionin tan bé és una cosa que hem donat per fet (tot i que potser de vegades el seu codi ofereix una gran ajuda).

game1
game2

Les donem de gameplay creades pels entusiastes no semblen especialment jugables, però la combinació de Kinect i el Wiimote en un únic sistema de control és una proposta temptadora.

No obstant això, la comunitat homebrew ha aconseguit èxits considerables a l’experimentar amb instruments musicals virtuals.

la representació per a PC usant Kinect de el piano que feia servir Tom Hanks a Big va obtenir bastants aplaudiments, però una demo menys coneguda mostra un concepte homebrew que realment podria ser usat en un futur joc. Aquesta demo d’Air Guitar és una cosa francament impressionant.

Els jocs de música i ball tenen un avantatge inherent sobre altres estils jugables. Com els moviments que demanes replicar es poden anticipar, el lag pot eliminar de l’equació (com en Dance Central, per exemple), així que els desenvolupadors tenen tot el temps de món per processar els moviments adequadament. L’únic dubte és el sensible i precís que és Kinect per mesurar la posició dels dits segons l’orientació de les mans de l’jugador, i corren rumors que Microsoft podria haver buscat la manera d’augmentar la precisió reajustant el flux de dades USB. Ara mateix els jocs de Kinect usen un mapa de profunditat a 320×240, malgrat que el maquinari és capaç d’arribar a quatre vegades aquesta resolució.

airguitar1
airguitar2

Tot i que les donem amb jocs de PC poden ser descoratjadores, aquesta implementació de air guitar mostra grans opcions per al gènere musical.

Més enllà de les implementacions jugables, la feina de concepte que ha envoltat la publicació dels drivers de Kinect mostra alguns usos molt pràctics de la tecnologia, tot i que minoritaris. Ja vam comentar en el seu moment, per exemple, el gran valor que tenia la càmera per als entusiastes amateur de la robòtica.

Connectant una càmera a un robot es pot aconseguir una visió remota, però hi ha poques dades reals que es puguin derivar d’una imatge bàsica com aquesta. Els vells gossos robot AIBO de Sony incorporaven sensors addicionals per evitar que el trasto col·lisionés amb objectes i caigués per les escales. A l’afegir una càmera de profunditat com Kinect, els robots poden detectar objectes a un rang molt més gran i esquivar-de forma més natural. Els robots també poden identificar humans i reconèixer gestos com ordres, o fins i tot utilitzar dades d’esquelet per imitar el moviment de el cos.

robot1
robot2

la combinació de càmeres RGB i de profunditat és francament útil per a la robòtica amateur. La percepció de profunditat ajuda a que aquests dispositius esquivin obstacles.

Més enllà d’aplicacions pràctiques com aquesta, també s’ha fet un gran treball homebrew per replicar alguna cosa semblant a la interfície de Minority Report, o al menys per manipular objectes amb les mans. Hi ha donem que fan tracking dels dits de forma individual, generant un efecte tipus multitouch que eclipsa qualsevol cosa vista en Xbox 360 en termes de precisió. Hi ha realment alguna cosa en aquest apartat que Microsoft pot aprendre de l’escena homebrew?

Deixa un comentari

L'adreça electrònica no es publicarà. Els camps necessaris estan marcats amb *