2010-11-05 52 views
5

我試圖用一維數組作爲查找表在我的頂點着色器..所以爲什麼當我打電話爲什麼GLSL中的texture1d()返回一個vec4?

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

它返回一個vec4?我的意思是我知道這就是它的作用,但這4個值代表什麼?我想要的只是基於座標的紋理中的一個值。

回答

3

因爲texture1D可以具有RGBA值(紅色,綠色,藍色,alpha)。如果您存儲在紅色通道(GL_RED)的1D紋理數據可以與訪問數據:

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

相關問題