3 layout(location=0) in vec2 position;
4 out vec2 tc, tc_left, tc_down;
5 out float element_sum_idx;
7 uniform sampler2D diff_flow_tex, diffusivity_tex;
11 // The result of glOrtho(0.0, 1.0, 0.0, 1.0, 0.0, 1.0) is:
13 // 2.000 0.000 0.000 -1.000
14 // 0.000 2.000 0.000 -1.000
15 // 0.000 0.000 -2.000 -1.000
16 // 0.000 0.000 0.000 1.000
17 gl_Position = vec4(2.0 * position.x - 1.0, 2.0 * position.y - 1.0, -1.0, 1.0);
19 tc_left = vec2(tc.x - 0.5f / textureSize(diffusivity_tex, 0).x, tc.y);
20 tc_down = vec2(tc.x, tc.y - 0.5f / textureSize(diffusivity_tex, 0).y);
22 vec2 element_idx = position * textureSize(diff_flow_tex, 0) - 0.5;
23 element_sum_idx = element_idx.x + element_idx.y;