X-Git-Url: http://git.tdb.fi/?a=blobdiff_plain;f=tests%2Fglsl%2Ffunction_overloading.glsl;h=e5561705fca8265eb4b205008984a50fbe972032;hb=6142f469eb17c06a432fde663c36a0567985d986;hp=636db5112c6fde119672e6e9c3d321e2be40b986;hpb=d1feb41b3ff4dd462f50891e8901bad39466b75c;p=libs%2Fgl.git diff --git a/tests/glsl/function_overloading.glsl b/tests/glsl/function_overloading.glsl index 636db511..e5561705 100644 --- a/tests/glsl/function_overloading.glsl +++ b/tests/glsl/function_overloading.glsl @@ -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) { @@ -43,18 +43,12 @@ 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=0) out vec4 frag_color; 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 _srgb_to_linear_color = color.rgb; + frag_color = vec4(mix(_srgb_to_linear_color/12.92, pow((_srgb_to_linear_color+0.055)/1.055, vec3(2.4)), lessThan(_srgb_to_linear_color, vec3(0.04045))), color.a); } */