#version 450 #extension GL_ARB_separate_shader_objects : enable layout(location = 0) in vec2 fUv; layout(location = 1) in flat uint fChannels; layout(location = 0) out vec4 result; layout(binding = 1) uniform Opt { vec4 multiplier; } opt; layout(binding = 2) uniform sampler2D render; void main() { if (fChannels != 1) return; result = vec4(texture(render, fUv).rrrr) * opt.multiplier; }