También en los mundos de la realidad virtual hay que «buscarse la vida» cuando no hay demasiada información de la que hacer uso para recrear el entorno, los personajes y sus posturas. Eso es más o menos lo que viene a decir el título de un trabajo que unos ingenieros de Meta (Facebook) presentaron en Siggraph, la conferencia por excelencia de los gráficos generados por ordenador, y que se titulaba QuestSim: Cómo hacer un seguimiento de las poses humanas con escasos sensores en avatares simulados.
En este caso sus investigaciones se centran dentro del campo de la captura de movimientos, esto es, la forma en que se analiza y capta la posición espacial real de los usuarios y sus movimientos para luego convertirlos en entidades matemáticas o «poses» en los avatares del mundo virtual generado por el ordenador (ya sea en AR o VR, realidad aumentada o virtual). Como puede verse en el vídeo, al interactuar con QuestSim la persona no tiene que llevar un complicado traje, marcas de seguimiento dibujadas por todo el cuerpo ni nada que resulte incómodo: todo se genera a partir de los datos del visor que lleva en la cabeza y los mandos de control de las manos. ¿Cómo se puede recrear algo tan complejo con tan pocos datos?
La forma de conseguir los datos es muy curiosa pues consiste en utilizar una especie de «gimnasio virtual» donde 4.000 personajes humanos de diversos tamaños y constitución se mueven al azar para entender cómo los datos de los sensores de sus manos y cabeza (puntos verdes) se relacionan con la pose corporal. En el Mundo Real esos datos provienen de giróscopos, brújulas y acelerómetros que miden la dirección y orientación de los mandos con precisión. De este modo, cuando posteriormente se examinan los datos a la inversa, se puede hacer coincidir el tipo de pose con la posición real del visor y los mandos que lleva una persona en su cuerpo. Esto incluye no sólo las posiciones relativamente estáticas sino también otras como caminar o correr. Si se piensa, es curioso que pueda incluso simular las piernas de los avatares, puesto que en la parte inferior del cuerpo real básicamente no hay sensores.
Son las leyes de la física las que permiten entender estas relaciones, pues la inercia, el contacto y los movimientos corporales –cuyos efectos están incluidos en los cálculos– limitan las posiciones que puede marcar cada sensor (y a la inversa: qué hace el cuerpo según los datos del sensor). En la demostración se utiliza un equipo Quest 2 de Meta y los resultados se califican como de «una precisión razonable». Hacerlo de este modo permite evitar efectos indeseados como cuando los avatares virtuales parece que caminan volando o patinando. Los resultados son bastante realistas, dentro de las limitaciones, y pueden tener en cuenta incluso los tipos de terreno (suelo) en sus cálculos.
A pesar de ser una demostración bastante llamativa, todavía queda camino por recorrer. Uno de los problemas es que curiosamente la posición exacta de las manos es una de las cosas peor simuladas (porque el algoritmo se fija más en su comportamiento que en su orientación exacta), dando como resultado un aspecto excesivamente «robótico». Y, para los estándares de hoy en día, QuestSim resulta un tanto lento, con una latencia de unos 160 ms, demasiado tiempo como para «sentir tu propio cuerpo» (aunque permite ver el de otros jugadores). Ambas cosas, no obstante, tienen fácil solución con un poco más de hardware y programación.
Se puede pensar en muchas aplicaciones para QuestSim, en especial que sirva como solución para sistemas de realidad virtual baratos que no cuenten con muchos sensores o para mejorar los avatares que no resultan demasiado naturales por las limitaciones de sus movimientos. Lo más interesante es quizá el método mediante el cual se ha desarrollado y la demostración de que con un poco de ingenio se puede llegar siempre un poco más allá.