// and 0 otherwise.
uniform float PREFIX(num_repeats);
-uniform sampler1D PREFIX(support_tex);
+uniform sampler2D PREFIX(support_tex);
vec4 FUNCNAME(vec2 tc) {
#if DIRECTION_VERTICAL
- vec4 support = texture1D(PREFIX(support_tex), tc.y * PREFIX(num_repeats));
- vec4 c1 = INPUT(vec2(tc.x, 1.0 - (tc.y + support.x)));
- vec4 c2 = INPUT(vec2(tc.x, 1.0 - (tc.y + support.y)));
+ vec4 support = tex2D(PREFIX(support_tex), vec2(tc.y * PREFIX(num_repeats), 0.0));
+ vec4 c1 = INPUT(vec2(tc.x, tc.y + support.x));
+ vec4 c2 = INPUT(vec2(tc.x, tc.y + support.y));
#else
- vec4 support = texture1D(PREFIX(support_tex), tc.x * PREFIX(num_repeats));
+ vec4 support = tex2D(PREFIX(support_tex), vec2(tc.x * PREFIX(num_repeats), 0.0));
vec4 c1 = INPUT(vec2(tc.x + support.x, tc.y));
vec4 c2 = INPUT(vec2(tc.x + support.y, tc.y));
#endif
// where * is complex multiplication.
return c1 + support.z * c2 + support.w * vec4(-c2.y, c2.x, -c2.w, c2.z);
}
+
+#undef DIRECTION_VERTICAL