Bloom the emissives and night lights #84

Open
opened 2026-10-20 08:49:28 +00:00 by sermuns · 0 comments
Owner

The only emissive in the renderer is the per-instance color on body parts.
The present pass is a single tonemap blit: no bright-pass, no blur, no composite.
ACES clamps a bright torch tip or a lit window to flat white.

Night is where this matters: a lit window, a street lamp, the moon and a torch tip
should all bleed into the air around them. The campus at night is currently a dark
scene with hard-edged bright patches.

Add a small downsample/upsample chain after the forward pass and composite it
additively before the tonemap: threshold with a soft knee, 3-4 levels, tent
upsample. MIP_BODY already contains the reduction machinery and the fullscreen
vertex shader, so the new part is the bright-pass and the composite. Cap levels
and resolution on GL.

Related: #77 and #78 occupy the same pass and should be ordered
deliberately (bloom after tonemap is fine for this look; FXAA last). #39 and #64
are what will be glowing.

The only emissive in the renderer is the per-instance color on body parts. The present pass is a single tonemap blit: no bright-pass, no blur, no composite. ACES clamps a bright torch tip or a lit window to flat white. Night is where this matters: a lit window, a street lamp, the moon and a torch tip should all bleed into the air around them. The campus at night is currently a dark scene with hard-edged bright patches. Add a small downsample/upsample chain after the forward pass and composite it additively before the tonemap: threshold with a soft knee, 3-4 levels, tent upsample. `MIP_BODY` already contains the reduction machinery and the fullscreen vertex shader, so the new part is the bright-pass and the composite. Cap levels and resolution on GL. Related: #77 and #78 occupy the same pass and should be ordered deliberately (bloom after tonemap is fine for this look; FXAA last). #39 and #64 are what will be glowing.
sermuns added this to the Rendering milestone 2026-10-20 08:49:28 +00:00
Sign in to join this conversation.
No description provided.