From fbac24773ab43802620cb731aa9ca4ce466cad31 Mon Sep 17 00:00:00 2001 From: Richard Zink Date: Fri, 9 Oct 2026 14:13:03 +0200 Subject: [PATCH] clouds3d-only cleanup: drop Vanta/three.js/clouds2d, real-sky fixes, settlement lights, dynamic location anchor --- Dockerfile | 2 - README.md | 28 +- background-final.html | 2885 --------------------------------- background.html | 420 +++-- build.py | 96 -- config.js | 124 +- default.conf | 18 + ground.jpg | Bin 283341 -> 0 bytes ground.png | Bin 2862375 -> 0 bytes noise.png | Bin 25796 -> 0 bytes vendor/LICENSE | 24 +- vendor/clouds2d.js | 0 vendor/clouds3d.js | 3022 +++++++++++++++++++++++++++++++---- vendor/stars.json | 1 + vendor/three.min.js | 6 - vendor/vanta.clouds.min.js | 1 - vendor/vanta.clouds2.min.js | 1 - 17 files changed, 3217 insertions(+), 3411 deletions(-) delete mode 100644 background-final.html delete mode 100755 build.py delete mode 100644 ground.jpg delete mode 100644 ground.png delete mode 100644 noise.png delete mode 100644 vendor/clouds2d.js create mode 100644 vendor/stars.json delete mode 100644 vendor/three.min.js delete mode 100644 vendor/vanta.clouds.min.js delete mode 100644 vendor/vanta.clouds2.min.js diff --git a/Dockerfile b/Dockerfile index 9ba5f6b..4867274 100644 --- a/Dockerfile +++ b/Dockerfile @@ -6,8 +6,6 @@ COPY nord.css /usr/share/nginx/html/nord.css 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;"] \ No newline at end of file diff --git a/README.md b/README.md index 12694e3..fd992eb 100644 --- a/README.md +++ b/README.md @@ -4,6 +4,10 @@ An animated desktop background that runs in a browser. Features: - Time-of-day simulation with realistic color gradients driven by the actual sun position (computed from latitude/longitude via SunCalc). +- WebGL flight scene (`vendor/clouds3d.js`): raymarched cloud deck, 3D + terrain from Copernicus DEM, real star sky (Yale BSC + Milky Way), + moon with phases, animated highway car lights and settlement lights + from OpenStreetMap/Overpass at night. - Night brightness coupled to the moon phase (new moon = minimum, full moon = maximum), with a configurable minimum so the night is never pitch-black. @@ -17,7 +21,7 @@ An animated desktop background that runs in a browser. Features: to add a new theme. - Customisable location: set `CONFIG.location.lat/lon`, or let the browser's geolocation API pick one up automatically (falls back to - London). + the built-in default Passau). - Optional custom location label (`CONFIG.location.label`) that overrides the OpenStreetMap reverse-geocoding lookup. - Configurable digital clock format string using ISO-8601-ish tokens @@ -60,6 +64,11 @@ window.CONFIG = { lon: 13.4319, // longitude, -180 to +180, east positive label: '' // optional custom place name; // if set, skips reverse-geocoding + }, + orbit: { // omit/null = straight-line flight + radiusKm: 15, // circular flight around location; + // clamped to ~50 km at zoom 11 + clockwise: true // turn direction } }; ``` @@ -116,14 +125,13 @@ DDDD weekday full name (Monday, Montag, ...) ├── ash.css default color theme ├── gruvbox.css alternative color theme ├── nord.css alternative color theme -├── noise.png background noise texture for Vanta -├── vendor/ vendored third-party JS (no network needed) -│ ├── three.min.js MIT (three.js) +├── vendor/ vendored third-party files (no network needed) +│ ├── clouds3d.js WebGL scene: raymarched clouds, 3D terrain, +│ │ real sun/moon/stars, car + city lights │ ├── suncalc.js ISC (SunCalc by mourner) -│ ├── vanta.clouds.min.js MIT (Vanta.js Clouds) -│ ├── vanta.clouds2.min.js MIT (Vanta.js Clouds2) +│ ├── stars.json Yale Bright Star Catalogue subset │ └── LICENSE per-library license attributions -├── default.conf nginx server config (port 58881) +├── default.conf nginx server config (port 58881, tile CORS proxies) ├── Dockerfile builds nginx:alpine image └── docker-compose.yml one-service Compose file ``` @@ -131,9 +139,11 @@ DDDD weekday full name (Monday, Montag, ...) ## Licenses - **Background application code**: MIT -- **three.js** (vendored): MIT - - **SunCalc** (vendored): ISC - -- **Vanta.js** (vendored): MIT - - **Open-Meteo** (weather API): CC BY 4.0 - +- **OpenStreetMap** (basemap tiles, Overpass road/place data): ODbL - + +- **Copernicus DEM** (terrain via terrarium tiles): open data +- **NASA GIBS VIIRS** (optional night-lights overlay): public domain - **OpenStreetMap Nominatim** (reverse geocoding): ODbL - \ No newline at end of file diff --git a/background-final.html b/background-final.html deleted file mode 100644 index 9381925..0000000 --- a/background-final.html +++ /dev/null @@ -1,2885 +0,0 @@ - - - - - - Background Vanta Clouds2 - - - - - - - - - -
-
-
\nDEBUG - Palette: Ash▼
-
-
- - - -
-
Time: --
-
Day%: --
-
Weather: --
-
Theme: --
-
Speed: --
-
Transition: --
-
Effective theme
-
skyColor
--
-
cloudColor
--
-
lightColor
--
-
bgColor
--
-
Vanta colors
-
skyColor
--
-
cloudColor
--
-
lightColor
--
-
bgColor
--
-
Theme table
-
-
-
RPG angles (degrees)
-
sun rise --
-
sun set --
-
sun now --
-
moon rise --
-
moon set --
-
moon now --
-
-
-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
00:00:00
-
-
- -
-
Sunrise--:--
-
-
-
- -
-
Sun Zenith--:--
-
-
-
- -
-
Sunset--:--
-
-
-
- -
-
Moon Phase--
-
-
-
- -
-
Moonrise--:--
-
-
-
- -
-
Moonset--:--
-
-
-
-
-
- - - - - - - - \ No newline at end of file diff --git a/background.html b/background.html index 6ce828a..0fecd99 100644 --- a/background.html +++ b/background.html @@ -3,7 +3,7 @@ - Background Vanta Clouds2 + Background Clouds3D -
+
-
\nDEBUG - Palette: Ash▼
+
\nDEBUG · -- fps▼