Shader Learn

05 Los datos se convierten en vértices

Por vértice, por dibujo y entre ambos

Cada vértice tiene su color; la GPU interpola entre ellos; uGain afecta a todo el triángulo a la vez.

01
Explicación

Arrastra los números subrayados a izquierda y derecha

// vértice: cada esquina tiene su propio colorvColor = aColor;// fragmento: recibe el color interpoladovec3 color = vColor * ;gl_FragColor = vec4(color, 1.0);
attributeUno por vértice
varyingvértice → interpolación → fragmento
uniformCompartido por una llamada de dibujo

Los pesos de interpolación son las coordenadas baricéntricas w0, w1, w2 de la lección anterior.

Lado JSgl.uniform1f(uGain, 1.00)

Un attribute tiene un valor por vértice; la GPU interpola un varying para el fragmento; un uniform se comparte en todo el dibujo.

Pruébalo

  • Pon uGain en 0.5: todo el triángulo se atenúa a la vez
  • En el código de vértices, cambia aColor por vec3(1.0)