/** * Generate the fragment shader for `LitQuadBatcher` — the SpriteIlluminator * path that supports per-pixel normal-map lighting from up to `MAX_LIGHTS` * point lights. * * Sprites without a `normalMap` push `aNormalTextureId = -1` and take the * unlit fast path inside this same shader (sample color, multiply by * vertex color, return) so lit and unlit sprites can share the lit batch * when they coexist with active lights. The cost vs the truly-unlit * `QuadBatcher` shader is one varying read + one comparison per fragment. * * The light's "height above the sprite plane" is encoded as a small * fraction of the light's radius (default `0.075`) so that lights * exactly at a fragment's screen position don't produce degenerate * flat shading. * @param {number} maxTextures - the number of color/normal texture units to support * @returns {string} GLSL fragment shader source * @ignore */ export function buildLitMultiTextureFragment(maxTextures: number): string; export { MAX_LIGHTS }; import { MAX_LIGHTS } from "../lighting/constants.ts"; //# sourceMappingURL=multitexture-lit.d.ts.map