Skip to content

feat(world): tinyskies-style water + rain + shoreline flow#67

Merged
rezailmi merged 3 commits into
mainfrom
worktree-water-rain-tinyskies
May 24, 2026
Merged

feat(world): tinyskies-style water + rain + shoreline flow#67
rezailmi merged 3 commits into
mainfrom
worktree-water-rain-tinyskies

Conversation

@rezailmi
Copy link
Copy Markdown
Collaborator

Summary

  • Water: silhouette-aware foam halo anchored at the visible waterline (where the sand mesh crosses the water plane), calmer wave amplitude, quieter caustics + sparkles, and tinyskies-style scrolling contour ripples drifting inward
  • Rain: replaced the heavy glass-lighting drop shader with tinyskies' minimal cellular refraction (each live cell shows the framebuffer displaced along a per-drop vector); kept transparent-canvas adaptations (`discard` + `skyAt` fallback). Streaks unchanged (already a direct port)
  • Shoreline flow: two counter-traveling sin waves in theta modulate the foam halo's brightness so it reads as water washing along the beach

Test plan

  • Open / and confirm the foam halo hugs the peanut silhouette, no perfect circle
  • Verify the foam shows visible bright "fronts" travelling along the shore
  • Toggle rain (or run the rain HUD switch) and confirm streaks + minimal refractive drops appear; no rim/glint artifacts
  • Cycle the day cycle and confirm the foam halo picks up warm sunset tints

Reza Ilmi added 2 commits May 24, 2026 20:19
Water shader:
- Drop wave amplitude 0.32 → 0.18 so the surface reads calm/glassy
- Quiet the lacy caustic blobs ~3× and hold them off the shore
- Halve sparkle intensity and rarify them
- Anchor shore-relative math at the visible waterline (where the sand mesh
  crosses y = waterY) instead of sandOuterRadius, so foam hugs the shore
  instead of floating ~1.3u out
- Port silhouetteAt() into the shader (shoreR = uIslandR × silhouette(θ))
  so depth, foam, and ripples follow the peanut shape instead of a perfect
  circle
- Replace the lapping pulse rings with tinyskies-style scrolling contour
  ripples that drift inward toward the shore
- Strengthen the primary foam halo mix so it picks up day-cycle warmth

Rain drops:
- Replace the heavy glass-lighting shader (best-cell tracking, dome/rim/
  glint/meniscus, premultiplied alpha by lighting weight) with tinyskies'
  minimal cellular refraction — each live cell shows the framebuffer
  displaced along a per-drop direction vector
- Keep `discard` + `skyAt` fallback (our canvas is transparent so alpha=1
  would hide the CSS sky)
- Match tinyskies' live-cell gate (d.r < (5 - r) × 0.056 && t > 0.5)

Streaks unchanged — already a verbatim port of tinyskies' streak pool.
Modulate the edgeFoam halo with two counter-traveling sin waves in theta
so brightness "flows" along the silhouette — reads as water washing along
the beach. Stays confined to the foam band so motion never bleeds out
into the ocean.
@vercel
Copy link
Copy Markdown

vercel Bot commented May 24, 2026

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
sensemaking-agents Ready Ready Preview, Comment May 24, 2026 12:32pm

…inyskies

# Conflicts:
#	src/engine/student-space/Game/View/Island.js
@rezailmi rezailmi merged commit 8fad4a4 into main May 24, 2026
3 of 4 checks passed
@rezailmi rezailmi deleted the worktree-water-rain-tinyskies branch May 24, 2026 12:31
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