2010-11-05 11 views
5

estoy tratando de utilizar una matriz 1D como una tabla de búsqueda en mi vertex shader .. ¿por qué cuando llamo¿Por qué texture1d() en GLSL devuelve un vec4?

texture1D(tex,gl_TexCoord[0].s);

¿Vuelve un vec4? Quiero decir, sé que eso es lo que hace, ¿pero qué representan los 4 valores? Todo lo que quiero es un valor de la textura basado en la coordenada.

Respuesta

3

Debido a que el texture1D puede/tiene valores RGBA (rojo, verde, azul, alfa). Si almacena los datos de textura 1D en el canal rojo (GL_RED) se puede acceder a esos datos con:

texture1D(tex,gl_TexCoord[0].s).r;

Cuestiones relacionadas