#version 450 #extension GL_EXT_buffer_reference : require layout(set = 0, binding = 0) uniform UIUniform { mat4 screen; } ubo; layout(location = 0) in vec2 inVertexPosition; layout(location = 1) in vec3 inPolygonPosition; layout(location = 2) in vec2 inPolygonSize; layout(location = 3) in vec4 inColor; layout(location = 0) out vec4 fragColor; void main() { gl_Position = ubo.screen * vec4(vec3(inVertexPosition * inPolygonSize, 0.0) + inPolygonPosition, 1.0); fragColor = inColor; }