WebGL
WebGL è una libreria grafica per il web (Web-based Graphics Library). È un contesto di HTML che fornisce un'API di grafica 3D per i browser web. Le specifiche sono ancora in costruzione. WebGL è gestito dal Khronos Group, un'organizzazione non profit.
Panoramica
WebGL si basa su OpenGL ES 2.0 e fornisce un'interfaccia di programmazione per la grafica 3D. Usa l'elemento Canvas HTML5 e vi si accede attraverso le interfacce Document Object Model.
Librerie di sviluppo
Esistono diverse librerie per lo sviluppo di WebGL. La libreria WebGLU fu la prima disponibile pubblicamente[1]. Altre librerie che includono WebGL sono: Three.js, GLGE, C3DL, Copperlicht, SpiderGL, Pixi.js, SceneJS, Blend4Web, Verge3D, Processing.js e XB PointStream.
Confronto con CSS3
I CSS3 hanno introdotto la proprietà "3D Transform" che consente di creare alcune animazioni e forme in 3D ma non possono equiparare le possibilità di WebGL[2][3].
Google Chrome Experiments
Google Chrome Experiments è uno showroom online di esperimenti basati su browser web, programmi interattivi e progetti artistici. Lanciato il 1º marzo 2009, Google Chrome Experiments è un sito web ufficiale di Google che originariamente doveva testare i limiti di JavaScript e le prestazioni e le capacità del browser Google Chrome. Con il progredire del progetto, ha assunto il ruolo di mostrare e sperimentare le più recenti tecnologie open source basate sul web, come JavaScript , HTML5, WebGL, Canvas, SVG, CSS e altri. Tutti i progetti vengono inviati dagli utenti e realizzati utilizzando tecnologie open source.
WebGL è una delle tecnologie più comunemente utilizzate sul sito. La tecnologia ha anche guadagnato un uso attivo in app online famose e utili come Google Maps, e Zygote Body (ex Google Body)[4][5][6].
Esempi
- Auto
- Viso umano
- Ingranaggio
Framework WebGL
Sono disponibili framework per creare contenuti WebGL senza dover costruire la struttura da zero.
Nota: il seguente elenco combina le librerie WebGL con motori di gioco e servizi Cloud senza alcuna distinzione.
Nome | Scripting | Modellazione | Animazione | Audio integrato | Networking integrato | Fisiche integrate | Cloud | Implementazione WebGL | Importazione | Esportazione | Licenza |
---|---|---|---|---|---|---|---|---|---|---|---|
Wonderland Engine | JavaScript | No | sì | sì | No | No | sì | Nativo (2.0) | .gltf, .glb, .fbx, .obj, .ply, .dae | .wasm, .bin, .html, .js | Proprietario |
Verge3D | JavaScript | sì | sì | sì | No | sì | sì | Nativo (1.0) | FBX, OBJ, STL | glTF | Proprietario |
Unity | C # | sì | sì | sì | sì | sì | sì | .NET trasferito in Wasm (1.0 e 2.0) | FBX, OBJ | Proprietario | |
A-Frame | JavaScript | No | sì | sì | No | No | sì | Nativo (1.0) | OBJ, COLLADA, componenti della comunità per glTF, FBX, three.js | HTML, three.js | Licenza MIT |
Three.js | JavaScript | No | sì | sì | No | No | sì | Nativo (1.0 e 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 | Proprietario |
PlayCanvas | JavaScript | No | sì | sì | sì | sì | sì | Nativo (1.0 e 2.0) | .dae, .dxf, .fbx, .gltf, .glb, .obj | No | MIT (motore), proprietario (editor ospitato su cloud) |
OSG.JS | JavaScript | No | sì | sì | No | No | sì | Nativo (1.0) | No | No | MIT |
LayaAir | ActionScript 3.0 , JavaScript , TypeScript | No | sì | sì | sì | No | No | Native, implementa anche canvas2D (1.0) | FBX | No | Open source (motore), proprietario (conversione del modello) |
Kubity | No | No | No | No | No | sì | sì | .NET traspilato (1.0) | No | No | Proprietario |
JanusWeb | JavaScript | No | sì | sì | sì | sì | sì | Nativo (1.0) | OBJ, COLLADA, glTF, FBX, STL, PLY, VRML | HTML, XML, JSON | Licenza MIT |
CopperLicht | JavaScript | No | sì | sì | No | sì | sì | Nativo (1.0) | No | No | Open source basato su zlib |
Clara.io | JavaScript , API REST | sì | sì | No | No | sì | sì | Nativo (1.0) | OBJ, FBX, Blend, STL, STP | OBJ, FBX, Blend, STL, Babylon.js, Three.js | Freemium o commerciale |
Babylon.js | JavaScript , TypeScript | No | sì | sì | No | sì | sì | Nativo (1.0 e 2.0) | OBJ, FBX, STL, Babylon, glTF | Tutti i formati supportati da Blender e 3dsMax (esportatori disponibili) | Licenza Apache 2.0 |
Away3D | Dattiloscritto | No | sì | sì | No | sì | sì | Flash transpiled (1.0) | No | No | Licenza Apache 2.0 |
Note
- ^ First WebGLU release, su bjartr.blogspot.com. URL consultato il 5 maggio 2019 (archiviato dall'url originale il 22 giugno 2018).
- ^ Guida per il 3D nei browser – WebGL Contro CSS 3D Transforms, su WE RAD, 5 maggio 2017. URL consultato il 29 gennaio 2021.
- ^ (EN) Pratik, 10+ CSS 3D Transforms Example With Code Snippets, su OnAirCode, 27 marzo 2018. URL consultato il 29 gennaio 2021.
- ^ Step inside the map with Google MapsGL, su googleblog.blogspot.in, Google official blog. URL consultato il 15 dicembre 2012.
- ^ MapsGL, su support.google.com, Google Maps. URL consultato il 15 dicembre 2012.
- ^ Roni Zeiger, Google Body becomes Zygote Body; built on open source 3D viewer, in Google Open Source blog, Google, 9 gennaio 2012. URL consultato il 27 gennaio 2012.
Altri progetti
Altri progetti
- Wikimedia Commons
- Wikimedia Commons contiene immagini o altri file su WebGL
Collegamenti esterni
- (EN) Sito ufficiale, su khronos.org.
- Corso su WebGL in italiano, su html5today.it. URL consultato il 25 marzo 2011 (archiviato dall'url originale il 23 marzo 2011).
- (EN) GLGE, su glge.org. URL consultato il 20 febbraio 2022 (archiviato dall'url originale il 3 marzo 2022).
- (EN) SpiderGL, su spidergl.org.
V · D · M | |||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Lato server |
| ||||||||||||
Lato client |
| ||||||||||||
Argomenti | Web statico · Web dinamico · Open Web Platform · Rich Internet application · Applicazione web |
V · D · M | |
---|---|
Caratteristiche · standard · protocolli | |
Caratteristiche | Segnalibri · Estensioni · Navigazione privata · Sincronizzazione |
Standard | HTML (v5) · CSS · DOM · JavaScript (IndexedDB · Web storage · WebAssembly · WebGL) |
Protocolli | HTTP (v2 · v3 · Cookies · Crittografia) · OCSP · WebRTC · WebSocket |
Attivi | |
Basati su Blink | Avast Secure Browser · Beaker · Blisk · Brave · Chrome · Chromium · Cốc Cốc · Dragon · Edge · Epic · Falkon · Kinza · Maxthon · Opera · Otter · Puffin · SalamWeb · Samsung Internet · Silk · Sleipnir · Sputnik · SRWare · Torch · UC · Vivaldi · Whale · Yandex |
Basati su Gecko | Firefox (per Android) · GNU IceCat · IceDragon · K-Meleon · PirateBrowser · SeaMonkey · SlimBrowser · TenFourFox · Tor · Waterfox |
Basati su WebKit | Dolphin · Dooble · Firefox per iOS · GNOME Web · iCab · Konqueror · Midori · Safari · surf · WebPositive |
Altro | 360 · Avant · Basilisk · Cake Browser · CM Browser · eww · Links · Lunascape · Lynx · NetFront · NetSurf · Pale Moon · QQ browser · qutebrowser · w3m · WebbIE |
Inattivi | |
Basati su Gecko | Beonex Communicator · Camino · Classilla · Conkeror · Galeon · Ghostzilla · Kazehakase · Kylo · Lotus · MicroB · Minimo · Mozilla suite · Pogo · Strata · Swiftfox · Swiftweasel · Timberwolf · xB |
Basati su Trident | AOL · Deepnet · GreenBrowser · Internet Explorer · MediaBrowser · MenuBox · NeoPlanet · NetCaptor · SpaceTime · UltraBrowser · ZAC |
Basati su WebKit | Arora · BOLT · Opera Coast · Flock · Fluid · Google TV · Iris · Mercury · OmniWeb · Origyn · QtWeb · rekonq · RockMelt · Shiira · Steel · Browser for Symbian · Uzbl · xombrero |
Altro | abaco · Amaya · Arachne · Arena · Blazer · Charon · Deepfish · Dillo · ELinks · Gazelle · HotJava · IBM Home Page Reader · IBM WebExplorer · IBrowse · KidZui · Line Mode · Mosaic · MSN TV · NetPositive · Netscape · Skweezer · Skyfire · Teashark · ThunderHawk · Vision · WinWAP · WorldWideWeb |
Categoria · Diffusione |
Controllo di autorità | LCCN (EN) sh2013000391 · J9U (EN, HE) 987007602372005171 |
---|