texture texturas ejemplos opengl-es webgl shader fragment-shader vertex-shader

opengl es - texturas - ¿Cómo saben los sombreadores de fragmentos OpenGL qué píxel debe muestrear en una textura?



texturas en opengl ejemplos (1)

Según entiendo, la etapa de rasterización de la tubería GL interpola vTextureCoords en la cara del triángulo, ejecutando el sombreador de fragmentos en cada píxel con el valor interpolado.

Así que tengo un triángulo:

Y tengo un sombreador de vértices:

uniform mat4 uViewProjection; attribute vec3 aVertexPosition; attribute vec2 aTextureCoords; varying vec2 vTextureCoords; void main(void) { vTextureCoords = aTextureCoords; gl_Position = uViewProjection * vec4(aVertexPosition, 1.0); }

Y tengo un sombreador de fragmentos:

precision mediump float; uniform sampler2D uMyTexture; varying vec2 vTextureCoords; void main(void) { gl_FragColor = texture2D(uMyTexture, vTextureCoords); }

Y alimentar en tres conjuntos de vértices y UV, intercalados:

# x, y, z, s, t 0.0, 1.0, 0.0, 0.5, 1.0 -1.0, -1.0, 0.0, 0.0, 0.0 1.0, -1.0, 0.0, 1.0, 0.0

¿Cómo sabe el sombreador de fragmentos dibujar el píxel A de manera diferente al píxel B? ¿Que cambios?