clouds3d-only cleanup: drop Vanta/three.js/clouds2d, real-sky fixes, settlement lights, dynamic location anchor

This commit is contained in:
Richard Zink committed 2026-10-09 14:13:03 +02:00
1 parent e4170bee62
commit fbac24773a
17 files changed
+3217 -3411

No files matched your search

+19 -9
View File
@@ -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 - <https://github.com/mrdoob/three.js>
- **SunCalc** (vendored): ISC - <https://github.com/mourner/suncalc>
- **Vanta.js** (vendored): MIT - <https://github.com/tengbao/vanta>
- **Open-Meteo** (weather API): CC BY 4.0 - <https://open-meteo.com/>
- **OpenStreetMap** (basemap tiles, Overpass road/place data): ODbL -
<https://www.openstreetmap.org/copyright>
- **Copernicus DEM** (terrain via terrarium tiles): open data
- **NASA GIBS VIIRS** (optional night-lights overlay): public domain
- **OpenStreetMap Nominatim** (reverse geocoding): ODbL -
<https://nominatim.org/release/>