Web3D , también llamado Web 3D , es un grupo de tecnologías para mostrar y navegar sitios web utilizando gráficos de computadora en 3D .
Era anterior a WebGL
El surgimiento de Web3D se remonta a 1994, con la llegada de VRML , un formato de archivo diseñado para almacenar y mostrar datos gráficos en 3D en la World Wide Web . [1] En octubre de 1995, en Internet World, Template Graphics Software demostró un complemento 3D/VRML para la versión beta de Netscape 2.0 de Netscape Communications . [2]
El Consorcio Web3D se formó para promover el desarrollo colectivo del formato. VRML y su sucesor, X3D , han sido aceptados como estándares internacionales por la Organización Internacional de Normalización y la Comisión Electrotécnica Internacional . [ cita requerida ]
El principal inconveniente de la tecnología era la necesidad de utilizar complementos de navegador de terceros para realizar la representación 3D, lo que ralentizó la adopción del estándar. [ cita requerida ]
Entre 2000 y 2010, uno de estos complementos, Adobe Flash Player , se instaló ampliamente en computadoras de escritorio y se utilizó para mostrar páginas web interactivas y juegos en línea y para reproducir contenido de video y audio. [3] Aparecieron varios marcos basados en Flash que usaban renderizado de software y ActionScript 3 para realizar cálculos 3D como transformaciones, iluminación y texturizado. Los más notables entre ellos fueron Papervision3D y Away3D . [ cita requerida ]
Finalmente, Adobe desarrolló Stage3D , una API para renderizar gráficos 3D interactivos con aceleración de GPU para su reproductor Flash y productos AIR, [4] que fue adoptada por los proveedores de software. [5] [6]
En 2009, Google introdujo una tecnología web 3D de código abierto llamada O3D . También requería un complemento del navegador, pero a diferencia de Flash/Stage3D, se basaba en la API de JavaScript . O3D no solo estaba orientada a los juegos, sino también a los anuncios, los visores de modelos 3D , las demostraciones de productos , las simulaciones, las aplicaciones de ingeniería y los sistemas de control y monitoreo. [7]
WebGL y glTF
WebGL (abreviatura de "Web Graphics Library") surgió a partir de los experimentos Canvas 3D iniciados por Vladimir Vukićević en la Fundación Mozilla . Vukićević demostró por primera vez un prototipo Canvas 3D en 2006. A fines de 2007, tanto Mozilla [8] como Opera [9] habían realizado sus propias implementaciones independientes.
A principios de 2009, el consorcio tecnológico sin fines de lucro Khronos Group inició el Grupo de trabajo WebGL, con la participación inicial de Apple, Google, Mozilla, Opera y otros. [10] La versión 1.0 de la especificación WebGL se lanzó en marzo de 2011. [11]
Las principales ventajas de la nueva tecnología incluyen la conformidad con los estándares web y un rendimiento 3D casi nativo sin el uso de ningún complemento del navegador. [12] Dado que WebGL se basa en OpenGL ES , funciona en dispositivos móviles sin ninguna capa de abstracción adicional . Para otras plataformas, las implementaciones de WebGL aprovechan ANGLE para traducir las llamadas OpenGL ES a llamadas API de DirectX, OpenGL o Vulkan. [13]
Entre los frameworks WebGL notables se encuentran A-Frame , que utiliza marcado basado en HTML para crear experiencias de realidad virtual; [14] PlayCanvas , un motor de código abierto junto con una plataforma de creación alojada en la nube para crear juegos de navegador; [15] Three.js , un framework con licencia MIT utilizado para crear demoscene desde principios de la década de 2000; [16] Unity , que obtuvo un back-end WebGL en la versión 5; [17] y Verge3D , que se integra con Blender , 3ds Max y Maya para crear contenido web en 3D. [18]
Con la rápida adopción de WebGL, surgió un nuevo problema: la falta de un formato de archivo 3D optimizado para la Web. Este problema fue abordado por glTF , un formato que fue concebido en 2012 por miembros del grupo de trabajo COLLADA . [19] En SIGGRAPH 2012, Khronos presentó una demostración de glTF, que entonces se llamó WebGL Transmissions Format (WebGL TF). El 19 de octubre de 2015, se publicó la especificación glTF 1.0. [20] La versión 2.0 glTF utiliza un modelo de material de renderizado basado en la física , propuesto por Fraunhofer. [21] Otras actualizaciones incluyen accesores dispersos y objetivos de transformación para técnicas como la animación facial, y ajustes de esquema y cambios importantes para casos especiales o rendimiento, como reemplazar las propiedades de objeto glTF de nivel superior con matrices para un acceso basado en índices más rápido. [22]
Futuro
" WebGPU " es el nombre provisional de un posible estándar web y API de JavaScript para gráficos y computación acelerada , cuyo objetivo es proporcionar "capacidades modernas de computación y gráficos 3D". Está desarrollado por el grupo comunitario "GPU para la Web" del W3C , con ingenieros de Apple, Mozilla, Microsoft y Google, entre otros. [23]
WebGPU no se basará en ninguna API 3D existente y utilizará una sintaxis similar a Rust para los sombreadores . [24]
Véase también
Referencias
- ^ Dave Raggett (1994). "Extensión de la WWW para dar soporte a la realidad virtual independiente de la plataforma" . Consultado el 22 de mayo de 2023 .
- ^ TGS muestra el primer complemento 3D/VRML para Netscape 2.0; TGS amplía su liderazgo en productos y tecnología 3D para Internet. AllBusiness.com . 30 de octubre de 1995. Último acceso: 26 de diciembre de 2011.
- ^ Una mirada retrospectiva a los mejores sitios Flash de 2009 Archivado el 18 de octubre de 2015 en Wayback Machine , Adobe Developer Connection, 14 de diciembre de 2009
- ^ Desarrollo de juegos 3D para Flash y videojuegos
- ^ "Adobe Flash 11 adopta Unreal Engine 3 para ofrecer mejores juegos de navegador | The Verge". theverge.com. 7 de octubre de 2011. Consultado el 22 de mayo de 2023 .
- ^ Keith Gladstien (2013). Desarrollo de juegos Flash en un mundo social, móvil y 3D . Cengage Learning. págs. 383–421. ISBN 978-1-4354-6021-8.
- ^ Página del proyecto O3D de Google Code
- ^ "Canvas 3D: potencia GL, estilo web". Blog.vlad1.com. Archivado desde el original el 17 de julio de 2011. Consultado el 14 de mayo de 2011 .
- ^ "Llevando el lienzo a otra dimensión". My.opera.com. 26 de noviembre de 2007. Archivado desde el original el 17 de noviembre de 2007. Consultado el 14 de mayo de 2011 .
- ^ "WebGL – OpenGL ES 2.0 para la Web". Khronos.org . Consultado el 22 de mayo de 2023 .
- ^ "Khronos lanza la especificación final de WebGL 1.0". 3 de marzo de 2011. Consultado el 22 de mayo de 2023 .
- ^ "Fundamentos de WebGL". HTML5 es genial.
- ^ "ANGLE – Motor de capa de gráficos casi nativo". 2019 . Consultado el 22 de mayo de 2023 .
- ^ "A-Frame". A-Frame . Consultado el 22 de mayo de 2023 .
- ^ "GDC 2014: Mozilla y sus socios demuestran que la Web es la plataforma ideal para los juegos". blog.mozilla.org. 18 de marzo de 2014. Consultado el 22 de mayo de 2023 .
- ^ NVScene. "Sesión NVScene 2015: Reinventando la rueda – Una última vez (Ricardo Cabello)". YouTube.
- ^ Robertson, Adi (3 de marzo de 2015). «Unity lanza oficialmente su nuevo motor de juego: Unity 5». The Verge . Consultado el 22 de mayo de 2023 .
- ^ Thacker, Jim (28 de mayo de 2021). "Soft8Soft lanza Verge3D 3.7". CG Channel . Consultado el 22 de mayo de 2023 .
- ^ Houston, Ben. «glTF: todo lo que necesitas saber». threekit.com . Consultado el 22 de mayo de 2023 .
- ^ Simkin, Aliaksei. "Detrás de escena de 3D Magic". globant.com . Consultado el 29 de octubre de 2020 .
- ^ "Materiales de base física en glTF: estado actual. M. Limper, T. Sturm, SIGGRAPH 2016 WebGL & glTF BOF (27 de julio de 2016)". YouTube .
- ^ "Cambios de sintaxis de glTF 2.0 y restricciones de codificación JSON · Issue #831 · KhronosGroup/glTF". GitHub . Consultado el 22 de mayo de 2023 .
- ^ "GPU para el grupo comunitario web". w3.org . Consultado el 22 de mayo de 2023 .
- ^ "De GLSL a WGSL: el futuro de los shaders en la Web" . Consultado el 22 de mayo de 2023 .