WebGL es una biblioteca de gráficos para la web ( W eb-based G raphics L ibrary ). Es un contexto HTML que proporciona una API de gráficos 3D para navegadores web. Las especificaciones aún están en construcción. WebGL es administrado por Khronos Group , una organización sin fines de lucro.
WebGL se basa en OpenGL ES 2.0 y proporciona una interfaz de programación para gráficos 3D. Utiliza el elemento Canvas de HTML5 y se accede a él a través de las interfaces del modelo de objeto del documento .
Hay varias bibliotecas para el desarrollo de WebGL. La biblioteca WebGLU fue la primera disponible públicamente [1] . Otras bibliotecas que incluyen WebGL son: Three.js, GLGE , C3DL , Copperlicht, SpiderGL, Pixi.js, SceneJS, Blend4Web , Verge3D , Processing.js y XB PointStream.
CSS3 introdujo la propiedad "3D Transform" que le permite crear algunas animaciones y formas en 3D pero no puede igualar las posibilidades de WebGL [2] [3] .
Experimentos de Google Chrome es una sala de exhibición en línea de experimentos basados en navegador web, programas interactivos y proyectos de arte. Lanzado el 1 de marzo de 2009, Google Chrome Experiments es un sitio web oficial de Google que originalmente se suponía que probaría las limitaciones de JavaScript y el rendimiento y las capacidades del navegador Google Chrome . A medida que avanzaba el proyecto, asumió la función de mostrar y experimentar con las últimas tecnologías de código abierto basadas en la web, como JavaScript, HTML5, WebGL, Canvas, SVG, CSS y otras. Todos los proyectos son enviados por los usuarios y creados utilizando tecnologías de código abierto.
WebGL es una de las tecnologías más utilizadas en el sitio. La tecnología también ha obtenido un uso activo en aplicaciones en línea populares y útiles como Google Maps y Zygote Body (anteriormente Google Body) [4] [5] [6] .
Coche
Cara humana
Engranaje
Existen marcos para crear contenido WebGL sin tener que construir la estructura desde cero.
Nota: La siguiente lista combina bibliotecas WebGL con motores de juegos y servicios en la nube sin distinción.
Nombre de pila | secuencias de comandos | Modelado | Animación | audio integrado | Redes integradas | Física
integrado |
Nube | Implementación
WebGL |
Importar | Exportar | Licencia |
---|---|---|---|---|---|---|---|---|---|---|---|
Motor del país de las maravillas | JavaScript | No | Sí | Sí | No | No | Sí | Nativo (2.0) | .gltf, .glb, .fbx, .obj, .ply, .dae | .wasm, .bin, .html, .js | Dueño |
Verge3D | JavaScript | Sí | Sí | Sí | No | Sí | Sí | Nativo (1.0) | FBX, OBJ, STL | glTF | Dueño |
Unidad | C # | Sí | Sí | Sí | Sí | Sí | Sí | .NET portado a Wasm (1.0 y 2.0) | FBX, OBJ | Dueño | |
Un cuadro | JavaScript | No | Sí | Sí | No | No | Sí | Nativo (1.0) | OBJ, COLLADA, componentes comunitarios para glTF, FBX, three.js | HTML, tres.js | licencia MIT |
tres.js | JavaScript | No | Sí | Sí | No | No | Sí | Nativo (1.0 y 2.0) | glTF, DRACO, FBX, OBJ, STL, MMD, PRWM, PCD, PDB | OBJ, glTF, PLY, Collada | MIT |
Sketchfab | JavaScript | No | Sí | Sí | No | No | No | Nativo (1.0) | .3dc, .3ds, .ac, .abc, .obj, .bvh, .blend, .geo, .dae, .dwf, .dw, .x, .dxf, .fbx, .ogr, .gta, .gltf , .igs, .mu, .craft, .kmz, .las, .lwo, .q3d, .mc2obj, .flt, .iv, .osg, .ply, .bsp, .md2, .mdl, .shp ,. stl, .txp, .vpk, .wrl, .vrml | No | Dueño |
PlayCanvas | JavaScript | No | Sí | Sí | Sí | Sí | Sí | Nativo (1.0 y 2.0) | .dae, .dxf, .fbx, .gltf, .glb, .obj | No | MIT (motor), propietario (editor alojado en la nube) |
OSG.JS | JavaScript | No | Sí | Sí | No | No | Sí | Nativo (1.0) | No | No | MIT |
LayaAir | ActionScript 3.0, JavaScript, Mecanografiado | No | Sí | Sí | Sí | No | No | Nativo, también implementa canvas2D (1.0) | FBX | No | Código abierto (motor), propietario (conversión de modelo) |
Kubity | No | No | No | No | No | Sí | Sí | .NET transpirado (1.0) | No | No | Dueño |
JanusWeb | JavaScript | No | Sí | Sí | Sí | Sí | Sí | Nativo (1.0) | OBJ, COLLADA, glTF, FBX, STL, CAPA, VRML | HTML, XML, JSON | licencia MIT |
CobreLicht | JavaScript | No | Sí | Sí | No | Sí | Sí | Nativo (1.0) | No | No | Código abierto basado en zlib |
clara.io | JavaScript, API REST | Sí | Sí | No | No | Sí | Sí | Nativo (1.0) | OBJ, FBX, Mezcla, STL, STP | OBJ, FBX, Mezcla, STL, Babylon.js, Three.js | Freemium o comercial |
Babilonia.js | JavaScript, mecanografiado | No | Sí | Sí | No | Sí | Sí | Nativo (1.0 y 2.0) | OBJ, FBX, STL, Babilonia, glTF | Todos los formatos compatibles con Blender y 3dsMax (exportadores disponibles) | licencia apache 2.0 |
Lejos3D | Mecanografiado | No | Sí | Sí | No | Sí | Sí | Flash transpilado (1.0) | No | No | licencia apache 2.0 |