So I'm using a
sampler2DArray Texture0[ 2 ];
I'm not entirely sure dynamic indexing into them is supported on GL 4.3 cause I got the idea from a slide at GDC 2014 that had AMD on it. AMD was actually talking about bindless sparse arrays but since bindless is not supported and ARB sparse textures don't work either ( I'm on catalyst 14.3 btw) I thought I should start with something that should work on current drivers/hardware.
If I index statically it works, but dynamic indexing doesn't.
I've attached an app that uses this feature. If you want to see that static indexing does work just uncomment this line in UberShader.frag
DiffuseTexture = texture( Texture0[ 0 ], OutTexcoord.xyz ).rgb;//this works
PS: Initially I was thinkign to send you the app/binary that does the hanging but it's 130MB and I can only upload 50MB here, I can send you the version if you'll provide a way to do so.
PS2: I provided the pixel shader, Texcoord is a vec4 cause it's UV + array index + array layer.