WebGL pour faire bref

WebGL c'est quoi ?


WebGL est un wrappeur javascript natif pour OpenGL. OpenGL est quant à elle une bibliothèque graphique de bas niveau permettant des rendus 3D (et 2D) de hautes performances.
Elle est notamment utilisé pour faire des moteurs graphiques (pour des jeux-vidéos par exemple), du rendu 3D, du calcul hautement parallèle.
Pour se faire une idée prenons un exemple :
Imaginons que l'on veuille rendre sur un écran HD (1920 × 1080) une vidéo à 60FPS ou chaque pixel a une couleur différente, calculable. On se retrouve avec 1 920 × 1 080 = 2 073 600 pixels à afficher en à peine 16 microsecondes, c'est trop pour la plupart des CPUs et risque de malmener les ressources de l'ordinateur. Il est donc judicieux d'utiliser le GPU, qui possède des milliers voir des millions de cœurs contrairement au CPU qui n'en a guère plus d'une centaine pour pouvoir lire notre vidéo de manière sastifaisante.
Comment fait-on cependant pour communiquer à la carte graphique ce que l'on veut faire ? Et bien on utilise une bibliothèque graphique (ici WebGL).
Ainsi WebGL sert lorsque l'on besoin rendu de haute performance sur un navigateur web comme un jeu-vidéo.

Exemple


Ci dessous un exemple très simple de que ces explications de WebGL vont construire ici :

Implémentation


Voir le code source de l'exemple complet.

eof