]> git.tdb.fi Git - libs/gl.git/blobdiff - tests/glsl/function_overloading.glsl
Allocate locations to interface variables
[libs/gl.git] / tests / glsl / function_overloading.glsl
index 636db5112c6fde119672e6e9c3d321e2be40b986..02576cadcc5096473034123ad49b3fcef0d7c91f 100644 (file)
@@ -5,8 +5,8 @@ uniform vec3 ambient;
 vec3 srgb_to_linear(vec3 color)
 {
        bvec3 near_zero = lessThan(color, vec3(0.04045));
-       vec3 gamma = pow((color.rgb+0.055)/1.055, vec3(2.4));
-       return mix(color.rgb/12.92, gamma, near_zero);
+       vec3 gamma = pow((color+0.055)/1.055, vec3(2.4));
+       return mix(color/12.92, gamma, near_zero);
 }
 vec4 srgb_to_linear(vec4 color)
 {
@@ -30,10 +30,10 @@ void main()
 }
 
 /* Expected output: vertex
-uniform mat4 mvp;
+layout(location=0) uniform mat4 mvp;
 layout(location=0) in vec4 position;
 layout(location=1) in vec2 texcoord;
-out vec2 _vs_out_texcoord;
+layout(location=0) out vec2 _vs_out_texcoord;
 void main()
 {
   _vs_out_texcoord = texcoord;
@@ -42,19 +42,13 @@ void main()
 */
 
 /* Expected output: fragment
-uniform sampler2D tex;
-vec3 srgb_to_linear(vec3 color)
-{
-  return mix(color.rgb/12.92, pow((color.rgb+0.055)/1.055, vec3(2.4)), lessThan(color, vec3(0.04045)));
-}
-vec4 srgb_to_linear(vec4 color)
-{
-  return vec4(srgb_to_linear(color.rgb), color.a);
-}
+layout(location=4) uniform sampler2D tex;
 layout(location=0) out vec4 frag_color;
-in vec2 _vs_out_texcoord;
+layout(location=0) in vec2 _vs_out_texcoord;
 void main()
 {
-  frag_color = srgb_to_linear(texture(tex, _vs_out_texcoord));
+       vec4 color = texture(tex, _vs_out_texcoord);
+       vec3 color_1 = color.rgb;
+       frag_color = vec4(mix(color_1/12.92, pow((color_1+0.055)/1.055, vec3(2.4)), lessThan(color_1, vec3(0.04045))), color.a);
 }
 */