WebGL
|
|
Vous pouvez partager vos connaissances en l’améliorant (comment ?) selon les recommandations des projets correspondants.
|
|
|
Cet article contient des informations sur des événements prévus ou attendus.
Il se peut que ces informations soient de nature spéculative et que leur teneur change considérablement alors que les événements approchent.
Tout élément d'actualité non encyclopédique est destiné à Wikinews. |
| WebGL | |
Logo |
|
|
|
|
| Développeur | WebGL Working Group |
|---|---|
| Environnements | Web multi-plates-formes |
| Type | API |
| Site web | www.khronos.org/webgl/ |
| modifier |
|
WebGL est une spécification d'affichage 3D pour les navigateurs web, créée par le Khronos Group. Elle permet d'utiliser le standard OpenGL depuis le code JavaScript d'une page web. C'est une technologie permettant le Web3D tout en exploitant les accélérations matérielles 3D à l'aide des pilotes OpenGL de la carte graphique.
Sommaire |
Fonctionnement [modifier]
Pour utiliser l'application graphique en WebGL, un utilisateur charge une page internet sur son navigateur. Le navigateur exécute le JavaScript appelant l'interface WebGL sur la page de l'utilisateur. La bibliothèque WebGL utilisée appelle ensuite le pilote OpenGL du système d'exploitation qui se chargera d'afficher les images directement sur l'écran, tout en exploitant les accélérations matérielles de la carte graphique.
Différentes bibliothèques WebGL existent à ce jour, telles que GLGE[1], CopperLicht[2], C3DL[3], SceneJS[4] et SpiderGL[5] afin de permettre l'implémentation de scènes 3D dans le navigateur.
Utilisations [modifier]
En septembre 2009, aucun navigateur Web ne permettait l'affichage 3D directement sur le navigateur sans greffon. Beaucoup de navigateurs vont intégrer cette fonctionnalité dans leurs versions futures. Actuellement, plusieurs navigateurs supportent cette fonctionnalité, ce qui est notamment le cas de Firefox à partir de la version 4, de Google Chrome à partir de la version 9. Safari propose aussi le support de WebGL dans son menu développement (désactivé par défaut). Opera supporte cette technologie depuis la version 12 de son logiciel. Internet Explorer ne supporte pas WebGL par défaut, il existe cependant des plugins.
Limitations [modifier]
WebGL est basée sur OpenGL ES2.0 (OpenGL for Embedded Systems), une version d'OpenGL destinée aux systèmes embarqués. Certaines fonctionnalités d'OpenGL y sont absentes, dont :
- Le selection Buffer : WebGL ne dispose pas de buffer de sélection.
- Les textures 3D : il n'est pas possible d'afficher de textures 3D en WebGL.
- Les shaders : WebGL n'utilise que le vertex shader et le fragment shader. On ne peut pas modifier le geometry shader.
Certains problèmes de compatibilité étant apparus, beaucoup de cartes graphiques sont désormais bloquées par défaut pour WebGL[6].
En juin 2011, Microsoft a renouvelé sa défiance vis-à-vis de cette technologie[7] principalement pour des raisons de sécurité. WebGL reste exclu d'Internet Explorer alors qu'il est supporté par la plupart des navigateurs. Mike Shaver, vice-président de la stratégie technique de la fondation Mozilla répond que les critiques de Microsoft valent pour toutes les technologies 3D web (Silverlight inclus), s'appuyant sur l'accélération 3D matérielle[8].
Malgré la finalisation de WebGL et son fort potentiel, les projets utilisant cette technologie sont peu nombreux à l'heure actuelle.
Projets et réalisations [modifier]
Les projets et réalisations en WebGL sont encore limités, on notera en particulier la contribution de Google concernant la création de multiples applications en WebGL (ex google Map en 3D), Chrome Experiments[9], démonstrations régulièrement mises à jour à partir du site The Chromium Projects, et le portage de Quake 2[10]. Mis à part cela, il existe des projets de bibliothèques complémentaires pour faciliter l'utilisation, ainsi que quelques projets de jeux amateurs.