Rendering: camera post-processing (vignette, color grading, bloom)
Current State
No post-processing / camera-effects pipeline. The GPU renderer writes lit color straight to the swapchain (only a tonemap step is in scope, via #27 (closed)).
Goal
A small, composable post-process stack on the camera: vignette, color grading (LUT or basic lift/gamma/gain), and bloom, applied after the main lit pass and before/alongside tonemapping.
Motivation
Driven by the Bistro milestone: raw lit output looks flat for marketing screenshots/video without at least vignette + color grading. General-purpose engine feature, not scene-specific — any project benefits.
Scope
CameraComponent(or a newPostProcessSettingsasset) holding: vignette (intensity, radius, smoothness), color grading (LUT texture or lift/gamma/gain), bloom (threshold, intensity, radius).- GPU pass: fullscreen post-process step in
GpuRendererafter the lit pass, before/combined with tonemap (#27 (closed)). - Skip in the software renderer initially (GPU-only, like shadows).
Acceptance
- A camera with vignette + color grading enabled visibly darkens edges and shifts color balance in the GPU viewport.
- Bloom makes emissive/over-bright surfaces glow.