18 lines
635 B
GLSL
18 lines
635 B
GLSL
#version 450
|
|
|
|
#include "rounded_tex.common.glsl"
|
|
|
|
layout(location = 0) out vec2 tex_pos;
|
|
layout(location = 1) out vec2 geo_pos;
|
|
|
|
void main() {
|
|
vec2 size = vec2(data.size_x, data.size_y);
|
|
vec2 pos;
|
|
switch (gl_VertexIndex) {
|
|
case 0: pos = data.pos[0]; tex_pos = data.tex_pos[0]; geo_pos = vec2(size.x, 0.0); break;
|
|
case 1: pos = data.pos[1]; tex_pos = data.tex_pos[1]; geo_pos = vec2(0.0, 0.0); break;
|
|
case 2: pos = data.pos[2]; tex_pos = data.tex_pos[2]; geo_pos = vec2(size.x, size.y); break;
|
|
case 3: pos = data.pos[3]; tex_pos = data.tex_pos[3]; geo_pos = vec2(0.0, size.y); break;
|
|
}
|
|
gl_Position = vec4(pos, 0.0, 1.0);
|
|
}
|