▣
module · drop-in viewer
sigma_post
The screen-space finishing chain for Sigma Boy RPG. `install()` registers seven full-screen passes, which run in this order:
by·posted 2mo ago
What it does
sigma_post
The screen-space finishing chain for Sigma Boy RPG. install() registers
seven full-screen passes, which run in this order:
| Priority | Pass | What it does |
|---|---|---|
| 10 | sig_ao | Ambient occlusion. World position is reconstructed from the depth buffer and the frame's inverse view-projection, and the normal comes from that position's derivatives — so it needs no G-buffer normal and works on the forward and deferred paths alike. Occlusion tints ambient rather than multiplying toward black, so corners keep their colour. |
| 30 | sig_bloom | Glow off the bright end of the image, gathered as a golden-angle spiral of taps with a soft knee above the threshold. It is one pass rather than a separable blur because each post pass sees only the chain's current colour and has no private scratch buffer. |
| 40 | sig_focus | Tilt-shift defocus above and below the play band, which reads as a shallow lens over a miniature set and holds the eye on the character. |
| 50 | sig_grade | Exposure, the ACES filmic curve, contrast, saturation, and a split-tone that cools the shadows and warms the highlights. |
| 60 | sig_lens | Chromatic aberration, scaled by the square of the distance from centre so fringing appears only toward the corners. |
| 70 | sig_film | Vignette plus grain animated from the frame index, weighted toward the mid-tones the way film emulsion behaves. |
| 80 | sig_sharpen | An unsharp mask whose strength backs off where local contrast is already high, and whose result is clamped to the neighbourhood range so edges crisp without ringing. |
Every tunable is a named shader property, so the look can be retuned live
through postprocess.setProperty(pass, property, value) without recompiling
— the defaults in this file are the shipped look.
uninstall() removes all seven, and passNames() returns them in order for
tests and tooling. SigmaBoyRPG installs the chain when it builds the
school and uninstalls it on teardown, so a component reload does not stack a
second copy of each pass.
Discussion
Scoped to this part · feeds back into the world's score.
Sign in to post.sign in
No comments yet. Be the first.