Hello,
I have an OpenGL 4 program using tesselation shaders. In the tesselation evalution shader I use a 2D texture sampler:
uniform sampler2D heightMap;
...
height = texture(heightMap, texCoord).x;
In the fragment shader I use a 2D texture array sampler:
uniform sampler2DArray texLayers;
...
gl_FragColor = texture(texLayers, texCoord);
The samplers are assigned to different texture units as below:
glActiveTexture(GL_TEXTURE0);
glBindTexture(GL_TEXTURE_2D, texHeightmap);
glActiveTexture(GL_TEXTURE1);
glBindTexture(GL_TEXTURE_2D_ARRAY, texLayers);
glUniform1i(heightMapLoc, 0);
glUniform1i(texLayersLoc, 1);
However my program validation is failing with the message "Validation failed! - Different sampler types for same sample texture unit in tessellation evaluation shader.". It happens whenever I use the sampler2DArray in the fragment shader and the sampler2D in the tesselation evalution shader, or vice-versa. Using both samplers in one shader and none in the other works without problems.
System: Radeon 5850 + Catalyst Hotfix 10.10c on Windows 7 x64.
Any help is appreciated. Thanks.
It should be a bug in the driver. We will fix it soon.
Frank
I am experiencing a similar problem on Linux64.
Any plans for a fix on future updates?
Thanks.
It has been fixed not not put into the driver that is for the end user. There is a long latency for QA process.
You could get the beta driver on linux through the beta program.
I noticed the issue has not been fixed in Catalyst 11.1.
I guess the QA process does take a long time.
How can I get access to the beta driver?
There is a linux beta program with regular drops in AMD. You could search for it.