Vixen
02b45cc4
csharp
public sealed class CapturedIrradianceFiller

Fills probes by capturing a cube at each one — doc 19 § L2's filler B.

No guide page documents this yet — the page shows what the code says about itself.

Remarks

The filler for a target with no compute, and the reason § 3 is written the way it is. A brick is a brick whether a compute shader traced rays into it this frame or this captured a cube at build time; nothing above the storage branches on which ran. That is what lets doc 19 § 7 promise WebGL2 the same lighting model as a desktop at a different update rate, and this is the half that makes the promise true rather than stated.

It is not a lightmapper. No UV unwrap, no chart packing, no seam fixing, no atlas — the output is the same brick pool the runtime filler writes, addressed the same way. Doc 19 § 4 retires the whole lightmap toolchain on exactly this basis, and it only holds because the two fillers share a destination.

The projection is the same integral TracedIrradianceFiller does — a sum of radiance against the basis, weighted by solid angle — with the samples arriving as cube texels instead of as rays. So the two agree wherever the quadrature does, which is the exit criterion doc 19 § L2 states for this pair and which CapturedIrradianceFillerTests asserts against a directional sky rather than a uniform one: a uniform environment agrees for the trivial reason that both integrate a constant.

Fields and properties (3)

  • public float Hysteresis

    How much of the previous answer survives a fill, from zero to one.

  • public int Cursor

    Which indirection cell the next budgeted fill starts at.

  • public int Skipped

    How many probes the last fill could not capture.

Methods (4)

Used by (3)

  • CapturedIrradianceFillerTestsVixen.Rendering.Tests
  • IrradianceBounceDeviceTestsVixen.Graphics.Golden.Tests
  • IrradianceCaptureDeviceTestsVixen.Graphics.Golden.Tests