Open source · Runs in your browser · No download, no account

Stellar Odyssey

A scroll-wheel journey from a planet's surface to the edge of the observable universe

Stellar Odyssey is an open-source, data-driven 3D visualization of the cosmos built with React, Three.js (React Three Fiber) and Next.js. One scroll wheel carries you from the surface of a planet, through the Solar System and the Milky Way, out to the observable-universe boundary about 46.5 billion light-years away — four zoom levels joined without a single mode switch.

Everything runs on the client. The interactive scene is loading on top of this page; if it does not appear, your browser needs WebGL and JavaScript enabled. The interface, 3D body labels and science notes are bilingual (English / Chinese) and switch instantly with the zh/EN toggle in the control panel.

Four zoom levels, one continuous scroll

Press 1–4 or just keep scrolling. Content level-of-detail cross-fades, the time-compression ratio is interpolated logarithmically, and the background colour and soundscape blend as you move; a HUD ruler switches between AU, light-years and megaparsecs automatically.

  • Planet: surface close-ups, satellites and detailed glTF models of the ISS, Hubble and Tiangong.
  • Solar System: all eight planets on full Keplerian orbital elements from NASA JPL, with positions matching the real current date on launch; Halley's Comet, asteroid and Kuiper belts.
  • Milky Way: a 3D barred spiral with 43,000 disk particles, density-wave arms, dust lanes, halo and HI warp, plus 20+ special objects modelled on real prototypes.
  • Universe: the Local Group, the Virgo Cluster, Laniakea and large-scale structure, with a Milky Way–Andromeda merger preview compressing 4.5 billion years into 12 seconds.

Driven by real astronomical data

The project favours public survey data over artistic invention, and documents every artistic liberty it does take.

  • 43,488 real galaxies from the 2MASS Redshift Survey (Huchra et al. 2012) rendered as a 3D point cloud — the Virgo cluster, the zone of avoidance and cosmic-web filaments are actual data, drawn in two draw calls.
  • M31, M33 and the Magellanic Clouds baked offline from DSS2 colour survey imagery into density, colour and dust maps; the Pleiades uses 600 Gaia DR3 members.
  • Solar activity: granulation, sunspots following the 11-year butterfly diagram, prominences, differential rotation, and a flare–CME event chain that brightens Earth's aurorae.
  • Raymarched volumetric nebulae (emission–absorption integration, 3D density textures, blue-noise dithering) for the Orion, Ring, Horsehead and Crab nebulae and WR 124.
  • Gravitationally lensed black holes with photon rings, background star bending, blackbody accretion-disk colour, Doppler beaming and gravitational redshift at Sagittarius A*, Cygnus X-1 and M87.

Astronomy Lab

Beyond the main scene, the Lab hosts standalone, adjustable experiments: a twin meteor-shower night, a total solar eclipse, a lunar eclipse, and an Observatory with single-object close-ups you can link to directly.

Under the hood (for developers)

If you build with WebGL, the interesting parts are the cross-scale rendering (logarithmic depth and scale management across ten-plus orders of magnitude), the raymarch volumetric material with adaptive quality tiers, the GLSL gravitational-lensing pass, and the offline data-baking pipeline that turns Gaia, SIMBAD, 2MRS and DSS2 into static assets. The codebase is TypeScript in strict mode with a test-coverage gate of 90% or higher.

Open source and attribution

The source code is released under the GNU AGPL-3.0 and developed in the open on GitHub. Textures and imagery come from public-domain or openly licensed sources (NASA, ESA, DSS2 and others) and are credited in the repository; the science notes list every place where the visualization deliberately departs from true scale or true silence.

Links

正在加载星系场景…