The widened light block and the two comparison bindings, as WGSL — spliced
into the shadowed shaded variants in place ofLIGHT_UNIFORM_WGSL.
The variable is named lights, like the narrow block's, so the punctual
chunk and both fragment bodies splice in unchanged; the first
LIGHT_UNIFORM_BYTES bytes are LIGHT_UNIFORM_MEMBERS_WGSL
verbatim, so the two structs cannot disagree about where a light lives.
The widened light block and the two comparison bindings, as WGSL — spliced into the shadowed shaded variants in place of
LIGHT_UNIFORM_WGSL.The variable is named
lights, like the narrow block's, so the punctual chunk and both fragment bodies splice in unchanged; the first LIGHT_UNIFORM_BYTES bytes areLIGHT_UNIFORM_MEMBERS_WGSLverbatim, so the two structs cannot disagree about where a light lives.