summaryrefslogtreecommitdiffstats
path: root/video/out
diff options
context:
space:
mode:
Diffstat (limited to 'video/out')
-rw-r--r--video/out/gl_video.c6
-rw-r--r--video/out/gl_video_shaders.glsl4
2 files changed, 4 insertions, 6 deletions
diff --git a/video/out/gl_video.c b/video/out/gl_video.c
index 5ad935bd70..f965a4abd9 100644
--- a/video/out/gl_video.c
+++ b/video/out/gl_video.c
@@ -567,10 +567,8 @@ static void update_uniforms(struct gl_video *p, GLuint program)
gl->Uniform1f(gl->GetUniformLocation(program, "sig_offset"), sig_offset);
float gamma = p->opts.gamma ? p->opts.gamma : 1.0;
- gl->Uniform3f(gl->GetUniformLocation(program, "inv_gamma"),
- 1.0 / (cparams.rgamma * gamma),
- 1.0 / (cparams.ggamma * gamma),
- 1.0 / (cparams.bgamma * gamma));
+ gl->Uniform1f(gl->GetUniformLocation(program, "inv_gamma"),
+ 1.0 / (cparams.gamma * gamma));
for (int n = 0; n < p->plane_count; n++) {
char textures_n[32];
diff --git a/video/out/gl_video_shaders.glsl b/video/out/gl_video_shaders.glsl
index b13d518e6c..032248516d 100644
--- a/video/out/gl_video_shaders.glsl
+++ b/video/out/gl_video_shaders.glsl
@@ -178,7 +178,7 @@ uniform mat3 colormatrix;
uniform vec3 colormatrix_c;
uniform mat3 cms_matrix;
uniform mat2 dither_trafo;
-uniform vec3 inv_gamma;
+uniform float inv_gamma;
uniform float input_gamma;
uniform float conv_gamma;
uniform float sig_center;
@@ -495,7 +495,7 @@ void main() {
color = clamp(color, 0.0, 1.0);
#ifdef USE_GAMMA_POW
// User-defined gamma correction factor (via the gamma sub-option)
- color = pow(color, inv_gamma);
+ color = pow(color, vec3(inv_gamma));
#endif
#ifdef USE_3DLUT
// For the 3DLUT we are arbitrarily using 2.4 as input gamma to reduce