1#version 400
2
3uniform sampler s;
4uniform samplerShadow sShadow;
5uniform sampler sA[4];
6uniform texture2D t2d;
7uniform texture3D t3d[4];
8flat in int i;
9
10out vec4 color;
11
12void main()
13{
14    color = texture(sampler2D(t2d, s), vec2(0.5));
15    color += texture(sampler3D(t3d[i], sA[2]), vec3(0.5));
16    color += texture(sampler2D(t2d, s), vec2(0.5));
17}
18
19uniform texture2D                 tex2D;
20uniform textureCube               texCube;
21uniform textureCubeArray          texCubeArray;
22uniform itextureCubeArray         itexCubeArray;
23uniform utextureCubeArray         utexCubeArray;
24uniform itexture1DArray           itex1DArray;
25uniform utexture1D                utex1D;
26uniform itexture1D                itex1D;
27uniform utexture1DArray           utex1DArray;
28uniform textureBuffer             texBuffer;
29uniform texture2DArray            tex2DArray;
30uniform itexture2D                itex2D;
31uniform itexture3D                itex3D;
32uniform itextureCube              itexCube;
33uniform itexture2DArray           itex2DArray;
34uniform utexture2D                utex2D;
35uniform utexture3D                utex3D;
36uniform utextureCube              utexCube;
37uniform utexture2DArray           utex2DArray;
38uniform itexture2DRect            itex2DRect;
39uniform utexture2DRect            utex2DRect;
40uniform itextureBuffer            itexBuffer;
41uniform utextureBuffer            utexBuffer;
42uniform texture2DMS               tex2DMS;
43uniform itexture2DMS              itex2DMS;
44uniform utexture2DMS              utex2DMS;
45uniform texture2DMSArray          tex2DMSArray;
46uniform itexture2DMSArray         itex2DMSArray;
47uniform utexture2DMSArray         utex2DMSArray;
48uniform texture1D                 tex1D;
49uniform texture3D                 tex3D;
50uniform texture2DRect             tex2DRect;
51uniform texture1DArray            tex1DArray;
52
53void foo()
54{
55    sampler2D              (tex2D, s);
56    samplerCube            (texCube, s);
57    samplerCubeArray       (texCubeArray, s);
58    samplerCubeArrayShadow (texCubeArray, sShadow);
59    isamplerCubeArray      (itexCubeArray, s);
60    usamplerCubeArray      (utexCubeArray, s);
61    sampler1DArrayShadow   (tex1DArray, sShadow);
62    isampler1DArray        (itex1DArray, s);
63    usampler1D             (utex1D, s);
64    isampler1D             (itex1D, s);
65    usampler1DArray        (utex1DArray, s);
66    samplerBuffer          (texBuffer, s);
67    samplerCubeShadow      (texCube, sShadow);
68    sampler2DArray         (tex2DArray, s);
69    sampler2DArrayShadow   (tex2DArray, sShadow);
70    isampler2D             (itex2D, s);
71    isampler3D             (itex3D, s);
72    isamplerCube           (itexCube, s);
73    isampler2DArray        (itex2DArray, s);
74    usampler2D             (utex2D, s);
75    usampler3D             (utex3D, s);
76    usamplerCube           (utexCube, s);
77    usampler2DArray        (utex2DArray, s);
78    isampler2DRect         (itex2DRect, s);
79    usampler2DRect         (utex2DRect, s);
80    isamplerBuffer         (itexBuffer, s);
81    usamplerBuffer         (utexBuffer, s);
82    sampler2DMS            (tex2DMS, s);
83    isampler2DMS           (itex2DMS, s);
84    usampler2DMS           (utex2DMS, s);
85    sampler2DMSArray       (tex2DMSArray, s);
86    isampler2DMSArray      (itex2DMSArray, s);
87    usampler2DMSArray      (utex2DMSArray, s);
88    sampler1D              (tex1D, s);
89    sampler1DShadow        (tex1D, sShadow);
90    sampler3D              (tex3D, s);
91    sampler2DShadow        (tex2D, sShadow);
92    sampler2DRect          (tex2DRect, s);
93    sampler2DRectShadow    (tex2DRect, sShadow);
94    sampler1DArray         (tex1DArray, s);
95}
96