feat(renderer): Henyey-Greenstein cloud phase function (ADR-0038) #103
No reviewers
Labels
No labels
atmosphere
clouds
debug
enhancement
foundation
high-priority
integration
low-priority
medium-priority
optimization
pbr
weather
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
akadmin/NemesisEngine!103
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "feat/cloud-phase-function"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Implements #26: anisotropic forward scattering for the volumetric clouds.
g = 0reproduces the isotropic ADR-0037 lighting bit-for-bit; evaluated once per ray (view/sun angle is constant along the march). Ambient stays isotropic so anti-sun clouds keep their fill.gasCloudParams::phase_g(default 0.7 per the ticket), packed into the reservedmisc.zpush lane —CloudPushstays 48 bytes, no descriptor or serialization changes.PHASE_MAX = 4.0: screenshot verification showed the raw ~19x peak clipping a wide cone around the sun to pure white after Reinhard + 8-bit; the cap keeps the halo bright but preserves cloud structure near the sun.Verified visually at a low sun: silver lining around the sun, brightness falls off with view angle, sun-facing clouds brighter.
cargo test/fmt/clippy -D warningsclean.🤖 Generated with Claude Code