diff --git a/shaders/src/main.fs b/shaders/src/main.fs index 4665b01e34..cf1af5ea8a 100644 --- a/shaders/src/main.fs +++ b/shaders/src/main.fs @@ -32,6 +32,13 @@ void main() { fragColor = evaluateMaterial(inputs); +#if defined(TARGET_METAL_ENVIRONMENT) + // Hack to force spirv-cross to keep the light_structure texture present in the argument buffer. + float hack = textureLod(light_structure, vec2(0.0, 0.0), 0.0).r; + fragColor.x += hack; + fragColor.x -= hack; +#endif + #if defined(VARIANT_HAS_DIRECTIONAL_LIGHTING) && defined(VARIANT_HAS_SHADOWING) bool visualizeCascades = bool(frameUniforms.cascades & 0x10u); if (visualizeCascades) {