1#version 310 es
2precision mediump float;
3precision highp int;
4
5uniform mediump sampler2D SPIRV_Cross_CombineduTextureuSampler[4];
6uniform mediump sampler2DArray SPIRV_Cross_CombineduTextureArrayuSampler[4];
7uniform mediump samplerCube SPIRV_Cross_CombineduTextureCubeuSampler[4];
8uniform mediump sampler3D SPIRV_Cross_CombineduTexture3DuSampler[4];
9
10layout(location = 0) in vec2 vTex;
11layout(location = 1) in vec3 vTex3;
12layout(location = 0) out vec4 FragColor;
13
14vec4 sample_func(vec2 uv, mediump sampler2D SPIRV_Cross_CombineduTexturesamp[4])
15{
16    return texture(SPIRV_Cross_CombineduTexturesamp[2], uv);
17}
18
19vec4 sample_func_dual(vec2 uv, mediump sampler2D SPIRV_Cross_Combinedtexsamp)
20{
21    return texture(SPIRV_Cross_Combinedtexsamp, uv);
22}
23
24vec4 sample_func_dual_array(vec2 uv, mediump sampler2D SPIRV_Cross_Combinedtexsamp[4])
25{
26    return texture(SPIRV_Cross_Combinedtexsamp[1], uv);
27}
28
29void main()
30{
31    vec2 off = vec2(1.0) / vec2(textureSize(SPIRV_Cross_CombineduTextureuSampler[1], 0));
32    vec2 off2 = vec2(1.0) / vec2(textureSize(SPIRV_Cross_CombineduTextureuSampler[2], 1));
33    vec2 param = (vTex + off) + off2;
34    vec4 c0 = sample_func(param, SPIRV_Cross_CombineduTextureuSampler);
35    vec2 param_1 = (vTex + off) + off2;
36    vec4 c1 = sample_func_dual(param_1, SPIRV_Cross_CombineduTextureuSampler[1]);
37    vec2 param_2 = (vTex + off) + off2;
38    vec4 c2 = sample_func_dual_array(param_2, SPIRV_Cross_CombineduTextureuSampler);
39    vec4 c3 = texture(SPIRV_Cross_CombineduTextureArrayuSampler[3], vTex3);
40    vec4 c4 = texture(SPIRV_Cross_CombineduTextureCubeuSampler[1], vTex3);
41    vec4 c5 = texture(SPIRV_Cross_CombineduTexture3DuSampler[2], vTex3);
42    FragColor = ((((c0 + c1) + c2) + c3) + c4) + c5;
43}
44
45