#version 450 layout(set = 0, binding = 0) uniform sampler2DShadow uShadow; layout(set = 0, binding = 1) uniform texture2D uTexture; layout(set = 0, binding = 2) uniform samplerShadow uSampler; layout(location = 0) in vec3 vUV; layout(location = 0) out float FragColor; void main() { FragColor = texture(uShadow, vec3(vUV.xy, vUV.z)) + texture(sampler2DShadow(uTexture, uSampler), vec3(vUV.xy, vUV.z)); }