2013-06-26 52 views
2

我問的可能是一個簡單的問題。我有一個image2D紋理的紋理數組(GL_TEXTURE_2D_ARRAY)。我通過image2DArray訪問片段着色器中的數組。我如何獲得對數組圖像的訪問? imageLoad()具有層編號的參數?我已閱讀herehere,但未能弄清楚它是如何完成的。從image2DArray訪問image2D

的事情是,如果我訪問它是這樣的:

void main(void) 
{ 

color = vec4(imageLoad(output_image, ivec3(gl_FragCoord.xy,0)).xyzw)/255.0; 
} 

也就是說,質地COORDS的第三個數字是紋理層index.I我得到紋理的輸出到屏幕上,但它變成靜態的(沒有按」隨着凸輪運動而移動)並移位。

UPDATE:

好的,這是我的fault.I被引用錯質地object.Yes,第三在imageLoad ivec3的座標應針對紋理陣列層索引。

+0

'sampler2DArray'? –

+0

不,image2DArray http://developer.download.nvidia.com/opengl/specs/GL_ARB_shader_image_load_store.txt但我想這個概念應該是類似的... –

回答

1

所有你需要的就是在這裏,在這link。 (不,我不打算聽起來像Dido歌曲)。