Disallow variable indexing into sampler array for ES and desktop before version 400.
git-svn-id: https://cvs.khronos.org/svn/repos/ogl/trunk/ecosystem/public/sdk/tools/glslang@22148 e7fa87d3-cd2b-0410-9028-fcbf551c1848
This commit is contained in:
@@ -48,6 +48,8 @@ in S2 s2;
|
||||
out vec3 sc;
|
||||
out float sf;
|
||||
|
||||
uniform sampler2D arrayedSampler[5];
|
||||
|
||||
void main()
|
||||
{
|
||||
float f;
|
||||
@@ -57,13 +59,14 @@ void main()
|
||||
v = textureLod(s2DArray, c3D, 1.2);
|
||||
f = textureOffset(s2DShadow, c3D, ic2D, c1D);
|
||||
v = texelFetch(s3D, ic3D, ic1D);
|
||||
v = texelFetchOffset(s2D, ic2D, 4, ic2D);
|
||||
v = texelFetchOffset(arrayedSampler[2], ic2D, 4, ic2D);
|
||||
f = textureLodOffset(s2DShadow, c3D, c1D, ic2D);
|
||||
v = textureProjLodOffset(s2D, c3D, c1D, ic2D);
|
||||
v = textureGrad(sCube, c3D, c3D, c3D);
|
||||
f = textureGradOffset(s2DArrayShadow, c4D, c2D, c2D, ic2D);
|
||||
v = textureProjGrad(s3D, c4D, c3D, c3D);
|
||||
v = textureProjGradOffset(s2D, c3D, c2D, c2D, ic2D);
|
||||
v = texture(arrayedSampler[ic1D], c2D); // ERROR
|
||||
|
||||
ivec4 iv;
|
||||
iv = texture(is2D, c2D);
|
||||
|
||||
12
Test/400.frag
Normal file
12
Test/400.frag
Normal file
@@ -0,0 +1,12 @@
|
||||
#version 330 core
|
||||
|
||||
in vec2 c2D;
|
||||
flat in int i;
|
||||
|
||||
uniform sampler2D arrayedSampler[5];
|
||||
|
||||
void main()
|
||||
{
|
||||
vec4 v;
|
||||
v = texture(arrayedSampler[i], c2D);
|
||||
}
|
||||
@@ -39,5 +39,6 @@ uint.frag
|
||||
switch.frag
|
||||
tokenLength.vert
|
||||
300scope.vert
|
||||
400.frag
|
||||
420.vert
|
||||
430scope.vert
|
||||
|
||||
Reference in New Issue
Block a user