Documentation
    Preparing search index...

    Function writeShadowUniforms

    • Packs one view's shadow tail — the 80 bytes after the landed block — into staging at floatBase, writeLightUniforms' contract continued: every float is written on every shaded view, zeros when no light casts, so the uploaded stride is a function of this frame's SceneLights alone and a frame that stops casting cannot leak the previous frame's matrix into its transcript (§33). Zeros are also what a fresh staging array holds, which is what keeps every landed shadowless upload byte-identical.

      When a light casts, the values are ShadowUniforms.uploadView's, member for member; the tap offset divides here once per view — mapSize is a positive integer whenever hasShadow is true (lights.ts refuses anything else), so the division cannot be by zero on the path that reaches it.

      Parameters

      • staging: Float32Array
      • floatBase: number
      • lights: SceneLights

      Returns void