flareHalo

The rainbow halo ring of a lens flare, drawn across the canvas from the light.

flareHalo(slots: {intensity: ArgSpec; radius: ArgSpec; chroma: ArgSpec; softness: ArgSpec}): (flare: Expr, params: GpuFragmentParams) => Expr

Import light from shaders/std and use light.flareHalo.

Call the result with the flare frame and the params. The ring centers on the point opposite the light through the canvas center. radius is in aspect-corrected uv, chroma (0–1) splits it into colors and softness widens it. Returns an RGB.

Parameters

NameTypeNotes
slots{intensity: ArgSpec; radius: ArgSpec; chroma: ArgSpec; softness: ArgSpec}

Example

flareHalo({intensity: p('haloIntensity'), radius: p('haloRadius'), chroma: p('haloChroma'), softness: p('haloSoftness')})(flare, params)

See also

  • flareFrame — The shared frame of a camera lens flare, which every flare* part reads.
  • ringBand — Three thin colored rings around the center, the rainbow edge of a lens or a halo.
  • lensGhost — One ghost disc of a lens flare, the faint circles that line up across from the light.

Used by

LensFlare