Universal Scene Description como Lenguaje del Metaverso

por Rev Lebaredian

Durante las últimas décadas, Internet ha cambiado fundamentalmente el mundo y ha puesto en marcha una enorme transformación en la forma en que consumimos y compartimos información. La transformación es tan completa que hoy en día, una presencia web de calidad es vital para casi todas las empresas, y la interacción con la web es fundamental para funcionar de manera efectiva en el mundo moderno.

La web ha evolucionado de documentos estáticos a aplicaciones dinámicas que involucran medios interactivos enriquecidos. Sin embargo, a pesar de que vivimos en un mundo 3D, la web sigue siendo abrumadoramente bidimensional.

Ahora nos encontramos en el umbral del próximo gran avance de la web: el advenimiento de Internet 3D o metaverso. En lugar de vincular páginas 2D, el metaverso vinculará mundos virtuales. Los sitios web se convertirán en espacios 3D interconectados similares al mundo en el que vivimos y experimentamos todos los días.

Muchos de estos mundos virtuales serán gemelos digitales que reflejarán el mundo real, vinculados y sincronizados en tiempo real. Otros estarán diseñados para el entretenimiento, la socialización, los games, el aprendizaje, la colaboración o el comercio.

No importa cuál sea el propósito de cualquier sitio individual, lo que hará que todo el metaverso sea un éxito será lo mismo que ha hecho que la web 2D sea tan exitosa: la interoperabilidad universal basada en estándares y protocolos abiertos.

El estándar más fundamental necesario para crear el metaverso es la descripción de un mundo virtual. En NVIDIA, creemos que la primera versión de ese estándar ya existe. Se trata de Universal Scene Description (USD), un ecosistema abierto y extensible para describir, componer, simular y colaborar en mundos 3D, inventado originalmente por Pixar Animation Studios.

De código abierto en 2015, USD ahora se utiliza en una amplia gama de industrias, no solo en medios y entretenimiento, sino también en arquitectura, ingeniería, diseño, manufactura, comercio minorista, computación científica y robótica, entre otras.

USD Es Más Que Un Formato de Archivo

USD es una descripción de escena: un conjunto de estructuras de datos y API para crear, representar y modificar mundos virtuales. La representación es rica. Admite no solo los aspectos básicos de los mundos virtuales como geometría, cámaras, luces y materiales, sino también una amplia variedad de relaciones entre ellos, incluida la herencia de propiedades, instancias y especialización.

Incluye funciones necesarias para escalar a grandes conjuntos de datos, como la carga diferida y la recuperación eficiente de datos muestreados en el tiempo. Es tremendamente extensible, lo que permite a los usuarios personalizar esquemas de datos, formatos de entrada y salida y métodos para encontrar activos. En resumen, USD cubre la amplísima gama de requisitos que Pixar consideró necesarios para realizar sus largometrajes.

Image showing the layered workflow for a factory assembly line simulation.
Una representación visual de cómo USD habilita flujos de trabajo en capas para casos de uso específicos de la industria.

Las capas son probablemente la característica más innovadora de USD. Conceptualmente, tienen algunas similitudes con las capas de Adobe Photoshop: el compuesto final es el resultado de combinar los efectos de todas las capas en orden. Pero en lugar de modificar los píxeles de una imagen como las capas de Photoshop, las capas USD modifican las propiedades de la escena compuesta. Lo que es más importante, proporcionan un mecanismo poderoso para la colaboración.

Diferentes usuarios pueden modificar la escena compuesta en diferentes capas y sus ediciones no serán destructivas. La capa más fuerte ganará en la composición, pero los datos de la capa más débil permanecerán accesibles. Más allá de la colaboración directa, la capacidad que brindan las capas para modificar de manera no destructiva lo que otros han hecho permite el tipo de composición que ha hecho que la web tradicional sea tan exitosa.

Las capas del interior de una habitación de piedra rojiza creada con USD: la habitación vacía, la habitación escenificada, diferentes cubiertas de material para asientos y diseños y colores de muebles alternativos

NVIDIA cree que USD debería servir como el HTML del metaverso: la especificación declarativa del contenido de un sitio web. Pero, así como HTML evolucionó de los documentos estáticos limitados de HTML 1 a las aplicaciones dinámicas de HTML 5, está claro que USD deberá evolucionar para satisfacer las necesidades del metaverso. Para acelerar esta evolución, NVIDIA ya ha realizado una serie de adiciones al ecosistema USD:

A corto plazo, NVIDIA está desarrollando:

  • Interoperabilidad glTF: un complemento de formato de archivo glTF permitirá que las escenas USD hagan referencia directamente a los activos glTF. Esto significa que los usuarios que ya utilizan glTF pueden aprovechar las funciones de composición y colaboración de USD sin tener que modificar sus activos existentes.
  • Esquema geoespacial (WGS84): NVIDIA está desarrollando un esquema geoespacial y un comportamiento de tiempo de ejecución en USD para admitir el estándar WGS84 para coordenadas geoespaciales. Esto facilitará los modelos de gemelos digitales de total fidelidad que deben incorporar la curvatura de la superficie terrestre.
  • Compatibilidad con caracteres internacionales (UTF-8): NVIDIA está trabajando con Pixar para agregar compatibilidad con identificadores UTF-8 a USD, lo que permite un intercambio total de contenido de todo el mundo.
  • Suite de pruebas y certificación de compatibilidad con USD: para acelerar aún más el desarrollo y la adopción de USD, NVIDIA está creando una suite de código abierto para pruebas y certificación de compatibilidad con USD. Los desarrolladores podrán probar sus compilaciones de USD y certificar que sus componentes de USD personalizados producen el resultado esperado.

A más largo plazo, NVIDIA está trabajando con socios para llenar algunas de las brechas restantes más grandes en USD:

  • Actualizaciones incrementales de alta velocidad: USD no fue diseñado para actualizaciones de escenas dinámicas de alta velocidad, pero las simulaciones de gemelos digitales lo requerirán. NVIDIA está desarrollando bibliotecas adicionales además de USD que permiten tasas de actualización mucho más altas para admitir la simulación en tiempo real.
  • Proceduralismo en tiempo real: USD, tal como existe actualmente, es casi totalmente declarativo. Las propiedades y valores en la representación de USD, en su mayor parte, describen hechos sobre el mundo virtual. NVIDIA ha comenzado a aumentar esto con un motor de ejecución basado en gráficos procedimentales llamado OmniGraph.
  • Compatibilidad con navegadores: en la actualidad, USD está basado en C++/Python, pero los navegadores web no. Para que todos puedan acceder a ellos, en todas partes, los mundos virtuales deberán poder ejecutarse dentro de los navegadores web. NVIDIA trabajará para garantizar que las compilaciones WebAssembly adecuadas con enlaces de JavaScript estén disponibles para hacer de USD una opción de desarrollo atractiva cuando se ejecuta dentro de un navegador es el mejor enfoque.
  • Transmisión en tiempo real de datos de IoT: los mundos virtuales industriales y los gemelos digitales en vivo requieren transmisión en tiempo real de datos de IoT. NVIDIA está trabajando en la construcción de conexiones USD a los protocolos de transmisión de datos de IoT.

Las empresas industriales y de manufactura, incluidas Ericsson, Kroger y Volvo, están adoptando USD para habilitar sus mundos virtuales 3D y proyectos de activos.

Comience a Construir Mundos Virtuales con USD

NVIDIA Omniverse es una plataforma escalable de computación para flujos de trabajo de simulación 3D con total fidelidad de diseño y un conjunto de herramientas para crear aplicaciones de metaverso basadas en USD. Omniverse se creó desde cero como un motor USD y un conjunto de herramientas abierto para crear pipelines 3D personalizadas e interoperables.

Puede acceder a una gran cantidad de recursos en USD de NVIDIA, disponibles en línea de forma gratuita. Un buen lugar para comenzar es con el centro de recursos USD de NVIDIA. Para aprender los conceptos básicos de USD con ejemplos en USDA y Python en un tutorial web paso a paso, inscríbase en el curso USD en el DLI.

Experimentar con USD es fácil con binarios de USD precompilados. Estas distribuciones de Windows/Linux lo ayudarán a comenzar a desarrollar herramientas que aprovechan USD o comenzar a usar USDView desde Omniverse Launcher. Para los desarrolladores de Python, la forma más fácil de comenzar a leer y escribir capas de USD es con el paquete de Python usd-core.

Si está buscando datos de muestra de USD, hay numerosas escenas de USD de muestra disponibles, incluida una muestra de minigame de canicas basada en la física y una escena de ático con materiales MDL renderizados en Omniverse. Además, USD SimReady Content incluye modelos de componentes de varias industrias preparados para flujos de trabajo de simulación.

Obtenga más información en el Centro de Recursos de Omniverse, que detalla cómo los desarrolladores pueden crear aplicaciones y extensiones personalizadas basadas en USD para la plataforma.

Siga a Omniverse en Instagram, Twitter, YouTube y Medium para obtener recursos adicionales e inspiración. Consulte los foros de Omniverse y únase a nuestro Servidor de Discord y Twitch para chatear con la comunidad.