Firefox 27 intègre un éditeur de shaders pour les applications WebGL
Aidant à la création et au débogage de shaders pour vos applications Web

Le , par LittleWhite, Responsable 2D/3D/Jeux
Introduction

Firefox 27 implémente un tout nouvel éditeur de shaders rendant la création d'applications WebGL plus aisée. Un tel outil est très important pour les développeurs sachant que toute application WebGL nécessite des shaders pour effectuer le rendu.
Pour rappel, un shader est un morceau de code utilisant un langage spécifique (GLSL pour les bibliothèque OpenGL/WebGL, HLSL pour DirectX) compilé et exécuté exclusivement sur la carte graphique. Le programme permet de déterminer comment afficher les pixels à l'écran (en calculant les transformations, les couleurs, les textures et autres effets de lumière, d'ombres...). Vous pouvez retrouver une introduction à ce langage ici.
Si vous vous rappelez de la démonstration d'Epic Game : Epic Citadel, il est à noter que ce programme contient 249 shaders dont certains approchent les 2 000 lignes de code.

Comme tout autre programme, un shader doit être débogué. Sachant qu'il s'exécute sur la carte graphique, ne pensez pas qu'il soit possible de rajouter des simples printf() dans le code. Le résultat d'un shader et l'affichage des éléments à l'écran. Il faut donc des outils permettant une édition rapide des shaders afin de voir rapidement les changements dans le code.

Shader Editor

Voici une vidéo présentant le nouvel éditeur :



Il faut savoir que chaque modification de shader nécessitait un rafraîchissement de la page.

Pour activer l'éditeur, il suffira d'ouvrir la boîte à outils (F12 ou Ctrl/Cmd + Maj + I), cliquez sur l'icône d’engrenage pour accéder aux options de la boîte à outils et finalement de s'assurer que l'option "Shader Editor" est activée.
Lorsque celle-ci est activée, vous devez immédiatement voir un nouvel onglet "Shader Editor" dans la boîte à outils.

L'éditeur est simple d'usage. Sur sa gauche, vous avez la liste des « shaders programs » et des vertex ou fragment shaders lui correspondant. Le passage de la souris sur un programme met en surbrillance les éléments de votre rendu affichés par ce shader. Vous pouvez aussi masquer les géométries des shaders indépendamment.
Lorsque vous éditez le code GLSL et que vous avez des erreurs de compilation, l'éditeur met la ligne en surbrillance et vous indique le message d'erreur. Le rendu n'est pas affecté en cas d'erreur.

Voici une seconde vidéo de présentation pour l'outil, cette fois, directement sur la démonstration de l'Unreal Engine :



Il faut bien comprendre que l'édition dynamique est limitée. En effet, il n'est pas possible de rajouter de nouvelles variables uniformes ou des attributs à vos sommets.
Il arrive aussi que l'éditeur, notamment en cas de passage de la souris sur certains programmes, provoque des défauts de rendu. Malgré cela, l'éditeur est totalement utilisable.

Votre opinion

Comment accueillez-vous un tel éditeur ?
Avez-vous déjà testé des éditeurs live (ShaderToy...) ?

Voir aussi

Les tutoriels en français sur WebGL.

Source

Mozilla


Vous avez aimé cette actualité ? Alors partagez-la avec vos amis en cliquant sur les boutons ci-dessous :


 Poster une réponse

Avatar de geeko75 geeko75 - Candidat au Club https://www.developpez.com
le 25/11/2013 à 9:37
excellente idee sauf que la version 27 bug anormalement
Offres d'emploi IT
Architecte électronique de puissance expérimenté H/F
Safran - Ile de France - Villaroche - Réau
Ingénieur analyste programmeur (H/F)
Safran - Auvergne - Montluçon (03100)
Chef projet big data - pse flotte H/F
Safran - Ile de France - Évry (91090)

Voir plus d'offres Voir la carte des offres IT
Responsable bénévole de la rubrique 2D - 3D - Jeux : LittleWhite -