kopia lustrzana https://github.com/jameshball/osci-render
30 wiersze
1.3 KiB
GLSL
30 wiersze
1.3 KiB
GLSL
std::string blurFragmentShader = R"(
|
|
|
|
uniform sampler2D uTexture0;
|
|
uniform vec2 uOffset;
|
|
varying vec2 vTexCoord;
|
|
|
|
void main() {
|
|
vec4 sum = vec4(0.0);
|
|
sum += texture2D(uTexture0, vTexCoord - uOffset*8.0) * 0.000078;
|
|
sum += texture2D(uTexture0, vTexCoord - uOffset*7.0) * 0.000489;
|
|
sum += texture2D(uTexture0, vTexCoord - uOffset*6.0) * 0.002403;
|
|
sum += texture2D(uTexture0, vTexCoord - uOffset*5.0) * 0.009245;
|
|
sum += texture2D(uTexture0, vTexCoord - uOffset*4.0) * 0.027835;
|
|
sum += texture2D(uTexture0, vTexCoord - uOffset*3.0) * 0.065592;
|
|
sum += texture2D(uTexture0, vTexCoord - uOffset*2.0) * 0.12098;
|
|
sum += texture2D(uTexture0, vTexCoord - uOffset*1.0) * 0.17467;
|
|
sum += texture2D(uTexture0, vTexCoord + uOffset*0.0) * 0.19742;
|
|
sum += texture2D(uTexture0, vTexCoord + uOffset*1.0) * 0.17467;
|
|
sum += texture2D(uTexture0, vTexCoord + uOffset*2.0) * 0.12098;
|
|
sum += texture2D(uTexture0, vTexCoord + uOffset*3.0) * 0.065592;
|
|
sum += texture2D(uTexture0, vTexCoord + uOffset*4.0) * 0.027835;
|
|
sum += texture2D(uTexture0, vTexCoord + uOffset*5.0) * 0.009245;
|
|
sum += texture2D(uTexture0, vTexCoord + uOffset*6.0) * 0.002403;
|
|
sum += texture2D(uTexture0, vTexCoord + uOffset*7.0) * 0.000489;
|
|
sum += texture2D(uTexture0, vTexCoord + uOffset*8.0) * 0.000078;
|
|
gl_FragColor = sum;
|
|
}
|
|
|
|
)";
|