Como ya sabemos bien, la realidad virtual no es una aventura que se limita a cascos y videojuegos. Los anuncios en materia de middleware y plataformas de desarrollo son igual de importantes, ya que poseen un rol crítico en la formación de este fabuloso ecosistema. La GDC 2015 arrancó con todo, y quien aparece a la cabeza es nada menos que AMD, presentando a su SDK LiquidVR, cuyo objetivo principal es reducir la latencia y extender la compatibilidad a todos los cascos del mercado.
La competencia en el mundo de la realidad virtual se está haciendo cada vez más amplia. Oculus y Sony tienen sus cascos (a los que esperamos con ansias), recientemente se sumó HTC con la colaboración de Valve, el batallón de Newell también trabaja en un casco interno, y Samsung se mantiene firme junto a su Gear VR. La variedad de hardware está llegando a un punto aceptable, mientras que el software hace todo lo posible para acelerar sus tiempos y crear productos a la altura de las circunstancias. Claro que, esto último no es para nada sencillo. Los desarrolladores necesitan herramientas apropiadas, con la capacidad de aprovechar al máximo el rendimiento disponible. La gran ecuación de la realidad virtual no va a funcionar si las experiencias no están optimizadas, y ahí es cuando aparecen proyectos como el flamante LiquidVR de AMD.
Como fabricante de tarjetas gráficas y procesadores, está dentro de los intereses de AMD ofrecer un paquete de desarrollo que se adapte por completo a los últimos ejemplares de hardware, mejore los puntos más fuertes de la oferta virtual, y reduzca efectos negativos naturales como la latencia. ¿Por qué se hace tanto énfasis en la reducción de latencia? En términos sencillos, es horrible. Todos los cascos nos hablan sobre escenarios en alta definición y rastreo en tiempo real de nuestros movimientos. Nadie quiere mover la cabeza y que el escenario lo registre 400 o 500 milisegundos después, por lo tanto, ningún SDK con las características de LiquidVR puede escapar a esa batalla. Hay cuatro elementos principales: Latest Data Latch, Asynchronous Shaders, Affinity Multi-GPU y Direct-to-Display. Los primeros dos trabajan en conjunto. Latest Data Latch se encarga de obtener datos de rastreo en forma eficiente, mientras que Asynchronous Shaders utiliza esos datos para «deformar» la imagen con la aplicación de shaders fuera de sincronía (o sea, sin esperar al siguiente cuadro), y reducir tanto la latencia como el stuttering (entrecortado).
En el caso de Affinity Multi-GPU, las cosas son igual de interesantes. Su ventaja es la de asignar un GPU para cada ojo, dividiendo la carga entre las tarjetas gráficas y limitando la intervención del CPU. Para cerrar, Direct-to-Display permite en esencia ignorar al sistema operativo y enlazar a un casco virtual directamente al GPU, lo que una vez más reduce la latencia, e incrementa la compatibilidad de cascos. La versión 1.0 del SDK LiquidVR está siendo distribuida a los socios principales de AMD, incluyendo a Oculus, y la gente de Crytek.