From 1c125f0fb46eb82d4f8e61ecba27fed06e6bcfcc Mon Sep 17 00:00:00 2001 From: degasus Date: Thu, 7 Mar 2013 17:35:27 +0100 Subject: add resolution uniform for pp, 16bit uses this for reducing screen resolution (wtf?) --- Source/Plugins/Plugin_VideoOGL/Src/PostProcessing.cpp | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) (limited to 'Source/Plugins/Plugin_VideoOGL/Src/PostProcessing.cpp') diff --git a/Source/Plugins/Plugin_VideoOGL/Src/PostProcessing.cpp b/Source/Plugins/Plugin_VideoOGL/Src/PostProcessing.cpp index acf1019350..3be735e612 100644 --- a/Source/Plugins/Plugin_VideoOGL/Src/PostProcessing.cpp +++ b/Source/Plugins/Plugin_VideoOGL/Src/PostProcessing.cpp @@ -40,7 +40,9 @@ static GLuint s_texture; static GLuint s_vao; static GLuint s_vbo; -static char* s_vertex_shader = +static GLuint s_uniform_resolution; + +static char s_vertex_shader[] = "in vec2 rawpos;\n" "in vec2 tex0;\n" "out vec2 uv0;\n" @@ -113,6 +115,9 @@ void BlitToScreen() glBindVertexArray(s_vao); s_shader.Bind(); + + glUniform2f(s_uniform_resolution, (float)s_width, (float)s_height); + glActiveTexture(GL_TEXTURE0+9); glBindTexture(GL_TEXTURE_2D, s_texture); glDrawArrays(GL_TRIANGLE_STRIP, 0, 4); @@ -168,6 +173,9 @@ void ApplyShader() return; } + // read uniform locations + s_uniform_resolution = glGetUniformLocation(s_shader.glprogid, "resolution"); + // successful s_enable = true; } -- cgit v1.2.3