Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
Prochaine révision Les deux révisions suivantes
ressource:code:processing:shaders [2022/09/07 11:00]
gweltaz [Textures]
ressource:code:processing:shaders [2022/09/07 12:34]
gweltaz
Ligne 2: Ligne 2:
  
 ===== Le hello World des shaders ===== ===== Le hello World des shaders =====
 +
 +Les fichiers ''​vert.glsl''​ et ''​frag.glsl''​ sont à placer dans le dossier ''​data''​ du sketch.
  
 <​accordion><​panel title="​shader_01">​ <​accordion><​panel title="​shader_01">​
Ligne 19: Ligne 21:
 </​code>​ </​code>​
  
-<code glsl freg.glsl>+<code glsl frag.glsl>
 #ifdef GL_ES #ifdef GL_ES
 precision mediump float; precision mediump float;
Ligne 54: Ligne 56:
  
 ===== Communication entre l'​application et les shaders ===== ===== Communication entre l'​application et les shaders =====
 +{{ :​ressource:​code:​processing:​shader_comm.png?​direct |}}
 +
 L'​application (programme Processing) peut envoyer des données vers les shaders par des variable déclarées avec le mot-clé ''​uniform''​. L'​application (programme Processing) peut envoyer des données vers les shaders par des variable déclarées avec le mot-clé ''​uniform''​.
  
Ligne 80: Ligne 84:
 Les coordonnes UV doivent être comprises entre 0.0 et 1.0 \\ Les coordonnes UV doivent être comprises entre 0.0 et 1.0 \\
 Elles pour origine le coin bas-gauche (0, 0) contrairement aux coordonnées d'​écran,​ qui ont pour origine le coin haut-gauche. Elles pour origine le coin bas-gauche (0, 0) contrairement aux coordonnées d'​écran,​ qui ont pour origine le coin haut-gauche.
 +
 +===== Utilisation d'un buffer hors-écran =====
 +Pratique pour créer des effets avec retour d'​information (feedback), comme par exemple un effet de réaction-diffusion.
 +
 +<code java>
 +PGraphics buffer = createGraphics(x,​ y, P2D);
 +
 +buffer.beginDraw();​
 +buffer.shader(myShader);​
 +buffer.rect(0,​ 0, buffer.width,​ buffer.height);​
 +buffer.endDraw();​
 +
 +image(buffer,​ 0, 0);
 +</​code>​
 +
 +
 ===== Fonctions utiles ===== ===== Fonctions utiles =====
  
  • ressource/code/processing/shaders.txt
  • Dernière modification: 2023/04/25 18:13
  • par zemog