X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=splat.frag;h=6e873bc75c959dcf9713f22a5fc51e771895086f;hb=3795723be95f2fe82f3c8b8b45b1a905b2c811fd;hp=83fd68333751a9df65b00956b920ac3ae8fb97ba;hpb=cea6fa02bd9deb110faedbfd59eedca7e666b369;p=nageru diff --git a/splat.frag b/splat.frag index 83fd683..6e873bc 100644 --- a/splat.frag +++ b/splat.frag @@ -4,17 +4,15 @@ in vec2 image_pos; flat in vec2 flow, I_0_check_offset, I_1_check_offset; out vec2 out_flow; -uniform sampler2DArray image_tex; +uniform sampler2DArray gray_tex; void main() { out_flow = flow; // TODO: Check if we are sampling out-of-image. - // TODO: See whether using intensity values gives equally good results - // as RGB, since the rest of our pipeline is intensity. - vec3 I_0 = texture(image_tex, vec3(image_pos + I_0_check_offset, 0)).rgb; - vec3 I_1 = texture(image_tex, vec3(image_pos + I_1_check_offset, 1)).rgb; - vec3 diff = abs(I_1 - I_0); - gl_FragDepth = 0.125 * (diff.x + diff.y + diff.z); // Make sure we stay well under the 1.0 maximum. + float I_0 = texture(gray_tex, vec3(image_pos + I_0_check_offset, 0)).r; + float I_1 = texture(gray_tex, vec3(image_pos + I_1_check_offset, 1)).r; + float diff = abs(I_1 - I_0); + gl_FragDepth = 0.125 * diff.x; // Make sure we stay well under the 1.0 maximum. }