1 Reply Latest reply on Nov 19, 2009 7:31 PM by bridgman

    fglrx 9-10 - GL_TEXTURE_2D_ARRAY_EXT defunc

    Jotschi

      Hi,

      i just upgraded to fglrx 9-10 and found out that the GL_TEXTURE_2D_ARRAY_EXT is no longer working as before.

      The extension is enabled:

      jotschi@NeXuS:~$ glxinfo | grep texture_array
          GL_EXT_texgen_reflection, GL_EXT_texture3D, GL_EXT_texture_array,

      I can also access the sampler2DArray uniform variable within my shader but i just get 0 floats returned for any texcoord. (Black Image)

      If i use GL_TEXTURE_2D everything works as usual.

       

       

      //This is how i generate my texture: void makeCheckImage(void) { int i, j, c; for (i = 0; i < checkImageHeight; i++) { for (j = 0; j < checkImageWidth; j++) { c = ((((i & 0x8) == 0) ^ ((j & 0x8)) == 0)) * 255; checkImage[i][j][0] = (GLubyte) c; checkImage[i][j][1] = (GLubyte) c; checkImage[i][j][2] = (GLubyte) c; checkImage[i][j][3] = (GLubyte) 255; } } } // I store it 600 times within the array. int nTextures = 600; glTexImage3D(GL_TEXTURE_2D_ARRAY_EXT, 0, GL_RGBA8, checkImageWidth, checkImageHeight, nTextures, 0, GL_RGBA, GL_UNSIGNED_BYTE, NULL); for (int i = 0; i < nTextures; i++) { glTexSubImage3D(GL_TEXTURE_2D_ARRAY_EXT, 0, 0, 0, i, checkImageWidth, checkImageHeight, 1, GL_RGBA, GL_UNSIGNED_BYTE, checkImage); } // my uniform: uniform sampler2DArray base_texture; // my access: vec4 texColor = texture2DArray(base_texture, vec3(texCoord.st,1)); gl_FragColor = texColor;