OpenGL["noël"]

OpenGL["noël"]

  • Intro et SDK
  • Bronze
  • Silver
  • Gold
  • Blog
  • OpenGL Documentation
  • OpenGL Wiki
  • GitHub
  • My glTF Viewer Tutorial

›Les shaders

Hello Triangle

  • Le code de base
  • Dessiner un triangle blanc
  • Dessiner un triangle en couleurs
  • Utiliser une structure de vertex
  • Dessiner un quad
  • Dessiner un disque
  • Utiliser les buffers d'index

Les shaders

  • Shaders, kesako ?
  • Les shaders par l'exemple
  • Charger, compiler et utiliser
  • Jouer avec les shaders
  • Mandelbrot
  • Préparer la suite
  • Un triangle qui tourne
  • Envoyer des matrices
  • Plusieur triangles
  • Textures

Plusieur triangles

Un autre intérêt des variables uniformes est de pouvoir dessiner un objet plusieurs fois avec des paramètres différents. Ainsi on utilise qu'un seul couple VBO-VAO pour l'objet, mais on fait plusieurs appels de dessin en modifiant entre chaque appel les variables uniformes.

Des triangles

Dans la boucle de rendu, dessinez 4 fois le triangle. En modifiant correctement la variable uniforme uModelMatrix avant chaque appel à glDrawArrays, faites en sorte qu'une triangle soit placé au centre de chaque quart de l'écran (utilisez la translation).

Avec la multiplication matricielle, faites en sorte que les triangles soient dessiné avec un quart de leur taille initiale.

Faites en sorte que chaque triangle tourne sur lui même. Deux des triangles doivent tourner dans un sens, les deux autres dans le sens inverse.

Et des couleurs !

Ajoutez dans le fragment shader une nouvelle variable uniforme uniform vec3 uColor;. Dans le main du shader, fixez la couleur du fragment en utilisant cette variable.

Dans le fragment shader, récupérez la location de la nouvelle variable uniforme uColor. Faites ensuite en sorte d'afficher chaque triangle avec une couleur différente.

Et... des maths :D

Petit exercice pratique sur les matrices: faites en sorte que les triangles tournent tous autour du centre de l'écran (en plus de tourner sur eux même). Attention à l'ordre des multiplications de matrices.

← Envoyer des matricesTextures →
  • Des triangles
  • Et des couleurs !
  • Et... des maths :D
OpenGL["noël"]
About Me
Personal websiteGithub
About This Website
BlogopenglnoelPowered by Docusaurus
About OpenGL
Documentation (docs.gl)Wiki
Copyright © 2021 Laurent NOEL