1$input a_position, a_texcoord0, a_color0
2$output v_texcoord0, v_texcoord1, v_texcoord2, v_texcoord3, v_color0
3
4// license:LGPL-2.1+
5// copyright-holders:Jules Blok,Cameron Zemek,Maxim Stepin
6
7#include "common.sh"
8
9// Autos
10uniform vec4 u_tex_size0;
11
12void main()
13{
14	gl_Position = mul(u_viewProj, vec4(a_position.xy, 0.0, 1.0));
15	v_color0 = a_color0;
16
17	vec2 ps = vec2(1.0, 1.0) / u_tex_size0.xy;
18	float dx = ps.x;
19	float dy = ps.y;
20
21	//   +----+----+----+
22	//   |    |    |    |
23	//   | w1 | w2 | w3 |
24	//   +----+----+----+
25	//   |    |    |    |
26	//   | w4 | w5 | w6 |
27	//   +----+----+----+
28	//   |    |    |    |
29	//   | w7 | w8 | w9 |
30	//   +----+----+----+
31
32	v_texcoord0 = a_texcoord0;
33	v_texcoord1 = a_texcoord0.xxxy + vec4(-dx, 0.0, dx, -dy); //  w1 | w2 | w3
34	v_texcoord2 = a_texcoord0.xxxy + vec4(-dx, 0.0, dx, 0.0); //  w4 | w5 | w6
35	v_texcoord3 = a_texcoord0.xxxy + vec4(-dx, 0.0, dx,  dy); //  w7 | w8 | w9
36}
37