Post-Processing
Post-processing effects are applied after the scene is rendered. Access them via scene.post.
local post = scene.postBloom adds a glow to bright areas of the image.
post.bloom_enabled = truepost.bloom_intensity = 0.5 -- glow strength, default 0.5post.bloom_threshold = 1.0 -- brightness cutoff, default 1.0post.bloom_radius = 0.5 -- blur spread, default 0.5Tone Mapping
Section titled “Tone Mapping”Tone mapping compresses HDR values to displayable range.
post.tonemap = "aces" -- "none" | "aces" | "neutral" | "filmic"post.exposure = 1.0 -- exposure multiplier, default 1.0| Mode | Description |
|---|---|
"none" | No mapping — raw linear values |
"aces" | ACES filmic curve (industry standard) |
"neutral" | Neutral, minimal color shift |
"filmic" | Filmic S-curve, cinematic look |
Color Grading
Section titled “Color Grading”Adjust the overall color balance:
post.saturation = 1.0 -- 0 = grayscale, 1 = normal, >1 = vividpost.contrast = 1.0 -- 1 = normal, >1 = punchierpost.temperature = 0.0 -- -1 (cool/blue) to +1 (warm/orange), 0 = neutralSSAO (Screen-Space Ambient Occlusion)
Section titled “SSAO (Screen-Space Ambient Occlusion)”SSAO darkens creases and corners where ambient light is occluded.
post.ssao_enabled = truepost.ssao_radius = 0.5 -- sample radius in world unitspost.ssao_intensity = 1.0 -- darkening strengthSSAO is currently stubbed — values are stored but rendering is not yet wired.
Depth of Field
Section titled “Depth of Field”Simulate camera lens blur based on distance from the focus point.
post.dof_enabled = truepost.dof_focus_distance = 5.0 -- meters from camerapost.dof_aperture = 2.8 -- lower = more blurDOF is currently stubbed — values are stored but rendering is not yet wired.
Vignette
Section titled “Vignette”Darken the edges of the frame for a cinematic look.
post.vignette_enabled = truepost.vignette_intensity = 0.3 -- 0 = none, 1 = heavy darkeningFull Example: Cinematic Look
Section titled “Full Example: Cinematic Look”local post = scene.post
-- Warm, filmic tone mappingpost.tonemap = "aces"post.exposure = 1.3
-- Subtle bloom on bright lightspost.bloom_enabled = truepost.bloom_intensity = 0.25post.bloom_threshold = 1.2
-- Slightly desaturated, warm gradepost.saturation = 0.9post.contrast = 1.1post.temperature = 0.15
-- Ambient occlusion for depthpost.ssao_enabled = truepost.ssao_radius = 0.4post.ssao_intensity = 0.8
-- Subtle vignettepost.vignette_enabled = truepost.vignette_intensity = 0.2