ReadonlynameHuman-readable identifier used in graph node labels and error messages.
Base media density of the global fog layer (at/below heightRef). Optical depth across the volume ≈ density · extinction · range, so for a ~300-unit range keep this in the low thousandths for fog that reads without fully hiding distant geometry.
Extinction per unit density (absorption + out-scatter).
Global single-scatter albedo / fog tint. Near-neutral with a faint cool
cast — fog in-scatter is mildly blue-shifted (Rayleigh-like), but keep it
close to white so the fog reads as haze rather than colored paint; use a
local FogVolume color for deliberately tinted fog.
Henyey-Greenstein anisotropy for the sun phase (0 = isotropic, →1 forward).
Ambient in-scatter so shadowed fog isn't pure black.
Vertical density falloff (1 / scale-height); 0 = uniform with height.
World-Y of the densest fog (where the height falloff is anchored).
Far bound of the fog volume in world units; 0 = use the camera far plane. Capping below the far plane packs the froxel Z slices into the near range where fog reads, raising effective resolution.
StaticcreateUpload the global fog params + local volumes. Call each frame before adding
the pass; reads ctx.activeCamera for the near/far Z-slice mapping.
Insert the pass into graph for one frame. Implementations call
graph.addPass(name, type, b => { ... }) exactly once and use the
supplied PassBuilder to declare reads, writes, transient
resources, and the execute callback.
Graph being built this frame.
Pass-specific dependency record (handles, scene data, etc.).
Pass-specific output record (typically a set of handles downstream passes will consume).
Release every long-lived GPU resource owned by the pass (pipelines, persistent uniform buffers, samplers, BGLs). Called by the factory or application during teardown. Default implementation is a no-op.
Froxel volumetric fog (render-graph version). A view-aligned 3D grid is filled with participating-media density (global height fog + local box volumes) and sun in-scattering (HG phase × cascade shadow + ambient), integrated front-to- back into per-froxel scattering + transmittance, then composited over the HDR scene. Reuses the deferred lighting pass's persistent camera/light uniforms so the sun shafts line up with the lit scene. Register AFTER DeferredLightingFeature.