WebXR: la solución tecnológica de realidad extendida web (Web XR)
Publicado el: 27 de diciembre de 2021 / Actualización desde: 23 de febrero de 2022 - Autor: Konrad Wolfenstein
WebXR es una interfaz de programación JavaScript (API) que permite que las aplicaciones interactúen con dispositivos de realidad aumentada y realidad virtual como HTC Vive, Oculus Rift, Google Cardboard o Open Source Virtual Reality (OSVR) en un navegador web. La API WebXR está especificada por un conjunto de especificaciones del W3C y es administrada de manera colaborativa por dos grupos, el Immersive Web Community Group y el Immersive Web Working Group.
En 2018, la API WebXR reemplazó a WebVR, ya que fue diseñada tanto para dispositivos de realidad aumentada como de realidad virtual. WebVR se implementó en los navegadores basados en Firefox y Chromium antes de que quedara obsoleto y eliminado. El 24 de septiembre de 2018 se oficializó el Grupo de Trabajo Web Inmersiva.
Esto convierte a WebXR en el nuevo estándar API para desarrolladores web, permitiéndoles crear aplicaciones VR o AR sin tener que trabajar directamente con el hardware respectivo. Los usuarios pueden usar solo un navegador web para ver contenido VR/AR sin tener que instalar complementos o software adicionales.
¡Lo que debes saber sobre WebXR, WebVR o WebAR!
¿El próximo paso revolucionario en la digitalización?
En resumen: Puede ser un código QR o una imagen que esté vinculada a esta tecnología WebXR, WebVR o WebAR. Sostiene su teléfono inteligente sobre el código QR o la imagen, lo escanea y los modelos de productos CAD o 3D se muestran inmediatamente en el navegador web. Aquí también se puede mostrar más información adicional. Dependiendo del modelado 3D de WebXR, aquí no eres pasivo, sino que puedes interactuar en este mundo 3D.
En la versión de escritorio puede ver e interactuar con la visualización 3D en el navegador a través de un enlace.
El precursor: WebVR - Realidad virtual web
WebVR era una API de JavaScript experimental que sólo era capaz de representar la realidad virtual. Fue reemplazado por WebXR.
Esta API se desarrolló con los siguientes objetivos en mente:
- Detectar dispositivos de realidad virtual disponibles
- Consultar las capacidades del dispositivo.
- Consultar la posición y orientación del dispositivo.
- Muestre imágenes en el dispositivo a la velocidad de fotogramas adecuada
La API WebVR fue desarrollada por primera vez para Mozilla en la primavera de 2014 por Vladimir Vukićević. Los contribuyentes a la API incluyen a Brandon Jones, Boris Smus y otros miembros del equipo de Mozilla. El 1 de marzo de 2016, el equipo de Mozilla VR y el equipo de Google Chrome anunciaron el lanzamiento de la versión 1.0 de la propuesta de API WebVR. La refactorización de API resultante trajo muchas mejoras a WebVR.
La última versión marcada es la 1.1, editada por última vez el 5 de abril de 2017. Los editores del documento incluyen miembros de los equipos de Mozilla y Google. Sin embargo, algunos miembros de Microsoft se han unido y están trabajando activamente en el proceso de diseño de la versión 2.0 de la API WebVR.
La API WebVR
La API de WebVR proporcionó algunas interfaces nuevas (por ejemplo, VR Display, VR Pose) que permitieron a las aplicaciones web mostrar contenido en realidad virtual utilizando WebGL con la configuración de cámara necesaria y las interacciones del dispositivo (por ejemplo, controlador o punto de vista). La API está diseñada para seguir una ruta específica que es muy similar a otras API web intrusivas, como la API de geolocalización. Los pasos necesarios son:
- Consultar una lista de dispositivos VR disponibles
- Compruebe si el dispositivo deseado admite los modos de visualización requeridos por la aplicación
- En caso afirmativo, la aplicación ofrece la funcionalidad de realidad virtual al usuario.
- El usuario realiza una acción indicando que quiere cambiar al modo VR
- Solicite una sesión de realidad virtual para presentar contenido de realidad virtual
- Inicie un bucle de renderizado que produzca fotogramas gráficos que se muestran en el dispositivo de realidad virtual.
- La producción de fotogramas continúa hasta que el usuario indica que quiere salir del modo VR.
- Finalizar la sesión de realidad virtual
WebVR 1.0 fue compatible con la versión de lanzamiento de Firefox 55+ para Windows (solo versión de 64 bits) y Chrome para Android lo utilizó hasta la versión 80 como un experimento de prueba de origen, lo que significaba que los desarrolladores podían solicitar un token para su sitio web. para habilitar WebVR sin problemas. WebVR 1.1 fue compatible con Microsoft Edge desde la versión 15002+ y en Samsung Internet, Chromium, Servo y Oculus Carmel.
Chrome para Windows admite WebVR 1.1 en una versión especial. Firefox 55+ en macOS también admitía WebVR cuando el usuario habilitaba una configuración.
Aunque WebVR es única como API, existen aplicaciones nativas en la mayoría de los dispositivos que permiten experiencias conectadas y acceso a contenido web. Varias herramientas importantes, como Unity y Blender, también pueden exportar para la web, lo que brinda a los usuarios una forma de consumir su contenido sin instalar una aplicación especial.
WebGL
WebGL (abreviatura de Web Graphics Library) es una API de JavaScript para mostrar gráficos interactivos 2D y 3D de forma acelerada por hardware en cualquier navegador web compatible sin el uso de complementos. WebGL está completamente integrado con otros estándares web y permite el uso acelerado por GPU de procesamiento de imágenes y efectos como parte de la representación de páginas web. Los elementos WebGL se pueden mezclar con otros elementos HTML y componerse con otras partes de la página o el fondo de la página.
Los programas WebGL constan de códigos de control escritos en JavaScript y códigos de sombreado escritos en OpenGL ES Shading Language (GLSL ES), un lenguaje similar a C o C++, que se ejecuta en la unidad de procesamiento de gráficos (GPU) de una computadora. WebGL es desarrollado y mantenido por Khronos Group, una organización sin fines de lucro.
A principios de 2009, el consorcio tecnológico sin fines de lucro Khronos Group fundó el grupo de trabajo WebGL, que inicialmente incluía a Apple, Google, Mozilla, Opera y otros. La versión 1.0 de la especificación WebGL se lanzó en marzo de 2011.
El 3 de marzo de 2011, se lanzó la primera versión de la especificación WebGL en la Game Developers Conference en San Francisco. En marzo de 2011, WebGL era compatible con el navegador web Chrome de Google y Firefox de Mozilla y, por lo demás, estaba habilitado de forma predeterminada en las versiones preliminares del navegador de Apple Safari y Opera.
En noviembre de 2011, el proyecto Angle (que significa Almost Native Graphics Layer Engine), presentado por Google en marzo de 2011, obtuvo la certificación para OpenGL ES versión 2.0, lo que permite crear aplicaciones multiplataforma con soporte WebGL, entre otras cosas. , las tres plataformas de sistemas operativos más conocidas (Windows, Mac y Linux) para desarrollar.
Una de las primeras aplicaciones de WebGL fue Zygote Body. En noviembre de 2012, Autodesk anunció que había trasladado la mayoría de sus aplicaciones a la nube, ejecutándose en clientes WebGL locales. Estas aplicaciones incluyen Fusion 360 y AutoCAD 360.
El desarrollo de la especificación WebGL 2 comenzó en 2013 y finalizó en enero de 2017. Esta especificación se basa en OpenGL ES 3.0. Las primeras implementaciones se pueden encontrar en Firefox 51, Chrome 56 y Opera 43.
El W3C ha estado trabajando en el sucesor WebGPU desde 2017.
WebGPU
WebGPU es el título provisional de un futuro estándar web y API de JavaScript para gráficos acelerados y cálculos informáticos relacionados con el hardware con el objetivo de reemplazar a WebGL. El desarrollo se lleva a cabo en la GPU W3C para Web Community Group por ingenieros de software de Apple, Mozilla, Microsoft, Google y otros.
A diferencia de WebGL, que se basó en OpenGL ES, WebGPU no es un puerto directo de una interfaz gráfica existente. Sin embargo, se basa en los conceptos de las interfaces relacionadas con el hardware Vulkan, Metal y Direct3D 12. Tanto los dispositivos móviles como las plataformas de escritorio deberían beneficiarse de las ganancias de velocidad.
El 7 de febrero de 2017, el equipo WebKit de Apple presentó una prueba de concepto que incluía ideas para un estándar llamado "WebGPU", basado en su propia interfaz "Metal". Además, se sugirió fundar un grupo comunitario del W3C.
El grupo comunitario “GPU para la Web” del W3C comenzó su trabajo el 16 de febrero de 2017. En ese momento ya había experimentos de Apple, Google y Mozilla, pero sólo Apple tenía una propuesta oficial. El 21 de marzo de 2017, Mozilla siguió con su propia propuesta para el estándar WebGPU.
El 1 de junio de 2018, los desarrolladores del navegador Chrome de Google anunciaron que habían acordado los aspectos más importantes y que ahora planean implementar el estándar en el futuro.
Posteriormente, el grupo comunitario adoptó el nombre “WebGPU” como título provisional para un estándar abierto. La presentación original de Apple pasó a llamarse “Web-Metal” para evitar confusiones.
Bibliotecas de PDF coincidentes:
¿Está buscando soporte técnico y estratégico para sus soluciones web de realidad extendida? ¡Xpert.Digital te apoya!
Estaré encantado de servirle como su asesor personal para soluciones de realidad extendida.
Puedes contactarme completando el formulario de contacto a continuación o simplemente llámame al +49 89 89 674 804 (Múnich) .
Estoy deseando que llegue nuestro proyecto conjunto.
Xpert.Digital – Konrad Wolfenstein
Xpert.Digital es un centro industrial centrado en la digitalización, la ingeniería mecánica, la logística/intralogística y la fotovoltaica.
Con nuestra solución de desarrollo empresarial de 360°, apoyamos a empresas reconocidas desde nuevos negocios hasta posventa.
Inteligencia de mercado, smarketing, automatización de marketing, desarrollo de contenidos, relaciones públicas, campañas de correo, redes sociales personalizadas y desarrollo de leads son parte de nuestras herramientas digitales.
Puede obtener más información en: www.xpert.digital – www.xpert.solar – www.xpert.plus