X-Git-Url: https://harrygodden.com/git/?a=blobdiff_plain;f=shaders%2Fblitblur.h;h=ac5f7847d4d2a4157f5a6505065112c15e3483b6;hb=b3ca3b7a45eec11c46eb19772e10021177665adb;hp=fcea6452f9c195aac35c671f2325ff1b4401d3b9;hpb=191bf91146eb7e3ac15fb18de6e7267d1cd686af;p=carveJwlIkooP6JGAAIwe30JlM.git diff --git a/shaders/blitblur.h b/shaders/blitblur.h index fcea645..ac5f784 100644 --- a/shaders/blitblur.h +++ b/shaders/blitblur.h @@ -7,18 +7,22 @@ static struct vg_shader _shader_blitblur = { .link = shader_blitblur_link, .vs = { +.orig_file = "shaders/blit.vs", .static_src = "layout (location=0) in vec2 a_co;\n" "out vec2 aUv;\n" "\n" +"uniform vec2 uInverseRatio;\n" +"\n" "void main()\n" "{\n" " gl_Position = vec4(a_co*2.0-1.0,0.0,1.0);\n" -" aUv = a_co;\n" +" aUv = a_co * uInverseRatio;\n" "}\n" ""}, .fs = { +.orig_file = "shaders/blitblur.fs", .static_src = "out vec4 FragColor;\n" "uniform sampler2D uTexMain;\n" @@ -53,10 +57,14 @@ static struct vg_shader _shader_blitblur = { ""}, }; +static GLuint _uniform_blitblur_uInverseRatio; static GLuint _uniform_blitblur_uTexMain; static GLuint _uniform_blitblur_uTexMotion; static GLuint _uniform_blitblur_uBlurStrength; static GLuint _uniform_blitblur_uOverrideDir; +static void shader_blitblur_uInverseRatio(v2f v){ + glUniform2fv(_uniform_blitblur_uInverseRatio,1,v); +} static void shader_blitblur_uTexMain(int i){ glUniform1i(_uniform_blitblur_uTexMain,i); } @@ -74,6 +82,7 @@ static void shader_blitblur_register(void){ } static void shader_blitblur_use(void){ glUseProgram(_shader_blitblur.id); } static void shader_blitblur_link(void){ + _uniform_blitblur_uInverseRatio = glGetUniformLocation( _shader_blitblur.id, "uInverseRatio" ); _uniform_blitblur_uTexMain = glGetUniformLocation( _shader_blitblur.id, "uTexMain" ); _uniform_blitblur_uTexMotion = glGetUniformLocation( _shader_blitblur.id, "uTexMotion" ); _uniform_blitblur_uBlurStrength = glGetUniformLocation( _shader_blitblur.id, "uBlurStrength" );