#version 450 layout(location = 0) in vec4 fragColor; layout(location = 1) in vec2 fragTexCoord; layout(location = 0) out vec4 outColor; layout(binding = 0, std140) uniform UniformBufferObject { float time; // offset 0 float resX; // offset 4 float resY; // offset 8 float rotation; // offset 12 float wavePhase; // offset 16 float padding1; // offset 20 float padding2; // offset 24 } ubo; void main() { // Simple pass-through with vertex color outColor = fragColor; }