X-Git-Url: https://harrygodden.com/git/?a=blobdiff_plain;f=shaders%2Fblitblur.h;h=fcea6452f9c195aac35c671f2325ff1b4401d3b9;hb=409edea2cf6271956137918e4e0b4f1c2addf620;hp=e341cea2827f586283432bbcbd731a01255d6c04;hpb=f7db507815e2822d971031c30f25e02b45e9c914;p=carveJwlIkooP6JGAAIwe30JlM.git diff --git a/shaders/blitblur.h b/shaders/blitblur.h index e341cea..fcea645 100644 --- a/shaders/blitblur.h +++ b/shaders/blitblur.h @@ -24,7 +24,7 @@ static struct vg_shader _shader_blitblur = { "uniform sampler2D uTexMain;\n" "uniform sampler2D uTexMotion;\n" "uniform float uBlurStrength;\n" -"uniform float uBlurExponent;\n" +"uniform vec2 uOverrideDir;\n" "\n" "in vec2 aUv;\n" "\n" @@ -41,7 +41,7 @@ static struct vg_shader _shader_blitblur = { " vec2 vrand = rand_hash22( aUv ) * 2.0 - vec2(1.0);\n" " vec2 vrand1 = rand_hash22( vrand ) * 2.0 - vec2(1.0);\n" " \n" -" vec2 vdir = texture( uTexMotion, aUv ).xy * uBlurStrength;\n" +" vec2 vdir = texture( uTexMotion, aUv ).xy * uBlurStrength + uOverrideDir;\n" "\n" " vec4 vcolour0 = texture( uTexMain, aUv + vdir*vrand.x );\n" " vec4 vcolour1 = texture( uTexMain, aUv + vdir*vrand.y );\n" @@ -56,7 +56,7 @@ static struct vg_shader _shader_blitblur = { static GLuint _uniform_blitblur_uTexMain; static GLuint _uniform_blitblur_uTexMotion; static GLuint _uniform_blitblur_uBlurStrength; -static GLuint _uniform_blitblur_uBlurExponent; +static GLuint _uniform_blitblur_uOverrideDir; static void shader_blitblur_uTexMain(int i){ glUniform1i(_uniform_blitblur_uTexMain,i); } @@ -66,8 +66,8 @@ static void shader_blitblur_uTexMotion(int i){ static void shader_blitblur_uBlurStrength(float f){ glUniform1f(_uniform_blitblur_uBlurStrength,f); } -static void shader_blitblur_uBlurExponent(float f){ - glUniform1f(_uniform_blitblur_uBlurExponent,f); +static void shader_blitblur_uOverrideDir(v2f v){ + glUniform2fv(_uniform_blitblur_uOverrideDir,1,v); } static void shader_blitblur_register(void){ vg_shader_register( &_shader_blitblur ); @@ -77,6 +77,6 @@ static void shader_blitblur_link(void){ _uniform_blitblur_uTexMain = glGetUniformLocation( _shader_blitblur.id, "uTexMain" ); _uniform_blitblur_uTexMotion = glGetUniformLocation( _shader_blitblur.id, "uTexMotion" ); _uniform_blitblur_uBlurStrength = glGetUniformLocation( _shader_blitblur.id, "uBlurStrength" ); - _uniform_blitblur_uBlurExponent = glGetUniformLocation( _shader_blitblur.id, "uBlurExponent" ); + _uniform_blitblur_uOverrideDir = glGetUniformLocation( _shader_blitblur.id, "uOverrideDir" ); } #endif /* SHADER_blitblur_H */