mirror of
https://gitlab.gnome.org/GNOME/gtk.git
synced 2024-12-27 06:00:22 +00:00
900a4e4d31
Move the resources of each renderer to its subdirectory. We've previously done that for the ngl renderer, but it is better to be consistent and do it for all the renderers.
31 lines
867 B
GLSL
31 lines
867 B
GLSL
#version 420 core
|
|
|
|
#include "clip.vert.glsl"
|
|
|
|
layout(location = 0) in vec4 inRect;
|
|
layout(location = 1) in vec4 inTexRect;
|
|
|
|
layout(location = 0) out vec2 outPos;
|
|
layout(location = 1) out vec2 outTexCoord;
|
|
|
|
vec2 offsets[6] = { vec2(0.0, 0.0),
|
|
vec2(1.0, 0.0),
|
|
vec2(0.0, 1.0),
|
|
vec2(0.0, 1.0),
|
|
vec2(1.0, 0.0),
|
|
vec2(1.0, 1.0) };
|
|
|
|
void main() {
|
|
vec4 rect = clip (inRect);
|
|
vec2 pos = rect.xy + rect.zw * offsets[gl_VertexIndex];
|
|
gl_Position = push.mvp * vec4 (pos, 0.0, 1.0);
|
|
|
|
outPos = pos;
|
|
|
|
vec4 texrect = vec4((rect.xy - inRect.xy) / inRect.zw,
|
|
rect.zw / inRect.zw);
|
|
texrect = vec4(inTexRect.xy + inTexRect.zw * texrect.xy,
|
|
inTexRect.zw * texrect.zw);
|
|
outTexCoord = texrect.xy + texrect.zw * offsets[gl_VertexIndex];
|
|
}
|