Perché texture1d () in GLSL restituisce un VEC4?
-
29-09-2019 - |
Domanda
Sto cercando di usare un array 1D come tabella di ricerca nel mio vertice shader .. Allora perché quando chiamo
texture1D(tex,gl_TexCoord[0].s);
restituisce un VEC4? Voglio dire, so che è quello che fa, ma cosa rappresentano i 4 valori? Tutto quello che voglio è l'unico valore dalla trama in base alla coordinata.
Soluzione
Perché la texture1d può/ha valori RGBA (rosso, verde, blu, alfa). Se si memorizzano i dati di trama 1D nel canale rosso (GL_red), è possibile accedere a tali dati con:
texture1D(tex,gl_TexCoord[0].s)
.r
;
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow