Skip to content

Add cloud kinds lit from the sun or moon, and cloud shadows - #5

Merged
vaprdev merged 2 commits into
mainfrom
clouds
Oct 10, 2026
Merged

vaprdev merged 2 commits into
mainfrom
clouds

Conversation

@vaprdev

@vaprdev vaprdev commented Oct 10, 2026

Copy link
Copy Markdown
Owner

Summary

Clouds were either puffy or streaky, shaded the same everywhere. They now come in kinds, are lit from the sun or moon, and can cast shadows on the ground.

-makeClouds(count, puffy, y0, y1)
+makeClouds(count, kind, y0, y1)      cumulus | towering | cirrus | wisp | stratus | ash
-paintClouds(..., alpha, puffy)
+paintClouds(..., alpha, orb)         lit side faces the orb, backlit glowing edges near it
+makeShadows() / paintShadows()       soft cloud shadows drifting over the ground
+paintHaze()                          static haze band

Each wallpaper picks its own kinds (towering cumulus on the horizon, ash over the volcano, and so on), thin clouds are thickened enough to read in the terminal, and each cloud's shape is built once per screen size so drawing them each frame stays cheap.

Evidence

Before (main) on the left, after on the right.

clouds

Day
clouds day

Verification: bun run typecheck passes; CI's check job runs dev/check.ts on this branch.

Merge Danger

Door: two-way

Blast Radius: API

makeClouds and paintClouds change signature (a kind instead of puffy, an orb instead of puffy); third-party wallpapers calling them need updating. The template and CONTRIBUTING are updated.

Merged together with the other visual improvements in #1; this PR's CI screenshot check fails by design because screenshots are regenerated there.

@vaprdev
vaprdev merged commit a4a9fd4 into main Oct 10, 2026
1 of 2 checks passed
@vaprdev
vaprdev deleted the clouds branch October 10, 2026 16:42
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant