Add FastIntegralImage

This commit is contained in:
Edwin Jakobs
2019-01-17 19:39:31 +01:00
parent a05e1e8b6d
commit 47d2c94df5
2 changed files with 103 additions and 0 deletions

View File

@@ -0,0 +1,26 @@
#version 330 core
uniform sampler2D tex0;
in vec2 v_texCoord0;
out vec4 o_color;
uniform int passIndex;
uniform int sampleCount;
uniform int sampleCountBase;
uniform vec2 passDirection;
void main() {
vec2 passOffset = vec2(pow(sampleCountBase, passIndex)) * (1.0/textureSize(tex0, 0)) * passDirection;
vec2 uv0 = v_texCoord0;
vec4 result = vec4(0.0);
for (int i = 0; i < sampleCount; ++i) {
vec2 readUV = v_texCoord0 - vec2(i *passOffset);
float factor = step(0.0, readUV.x) * step(0.0, readUV.y);
result += factor * texture(tex0, readUV);
}
o_color = result;
}