Add satellite ground texture (ESRI World Imagery, Passau)

Pulled a 5x4 tile mosaic of the Passau region (zoom 10) from
ESRI's free ArcGIS World Imagery service, stitched + resized to
1024x768 JPEG (277 KB). Added to Dockerfile as ground.jpg.

Shader side:
- New uniform uGround (texture unit 1)
- horizonMask: rd.y in [-0.20, -0.02] -> ground fades in from 0
  to 1 as we look further down
- gUv derived from rd.xz so looking forward/down scrolls across
  the satellite image (parallax-like feel)
- Distant ground fades toward uBg via a 'fog' factor so the horizon
  blends naturally with the sky gradient

Loading is async — clouds render before ground texture arrives.
Falls back to a black sample if ground.jpg fails to load.
This commit is contained in:
Richard Zink committed 2026-10-07 20:15:53 +02:00
1 parent 2e745c26ad
commit 6323beccf9
4 files changed
+56 -1

No files matched your search

+1
View File
@@ -7,6 +7,7 @@ COPY config.js /usr/share/nginx/html/config.js
COPY i18n.js /usr/share/nginx/html/i18n.js
COPY background.html /usr/share/nginx/html/background.html
COPY noise.png /usr/share/nginx/html/noise.png
COPY ground.jpg /usr/share/nginx/html/ground.jpg
COPY vendor/ /usr/share/nginx/html/vendor/
EXPOSE 58881
CMD ["nginx", "-g", "daemon off;"]