The experiment
Real terrain.
An imagined ocean.
Hydrosphere asks a simple question: what would a world look like if it had an ocean? Explore Mars and the Moon by clicking the small, distant world on the left. Changing sea level reveals the relationship between measured elevation and an imagined body of water. This arrangement is a navigation scene, not an astronomical map of their positions.
Where the landscape comes from
The terrain uses the Mars Global Surveyor MOLA Mission Experiment Gridded Data Record: MEGT90N000CB.IMG, product version 2.0. The global map contains 1440 × 720 elevation samples, at four pixels per degree. The original producer supplied interpolated values in bins without measurements. This demo retains the native grid.
Elevation is expressed in meters relative to the dataset’s areoid, a modeled reference surface. The source is signed 16-bit big-endian; our build converts it to lossless unsigned 16-bit values with an explicit scale and offset. Maximum encoding error is less than 0.23 m. Grid resolution and source interpolation impose much larger spatial limitations.
NASA PDS Geosciences: MOLA data and documentation ↗
The lunar world
The Moon uses the NASA Scientific Visualization Studio CGI Moon Kit: the 1440 × 720 LOLA grid derived from spring 2019 data, paired with the December 2025 LROC visual color map. Both maps are registered to the same longitude convention. The half-metre source elevations are converted to metres relative to a sphere of radius 1,737.4 km; this geometric reference is not a lunar gravitational equipotential sea. Encoding error is below 0.15 m, while equatorial source pixels span roughly 7.58 km.
Dark lunar maria are ancient lava plains, not existing bodies of water. Clouds, forests, snowfields and the same three imagined creatures are shown under a fictional habitable-atmosphere scenario. Their appearance does not describe present-day lunar conditions or simulate terraforming. Phobos and Deimos appear only with Mars.
The distant world uses a lightweight frozen preview. After a world has been explored, its major ocean and land colors remain in that preview. Only the central world runs weather, animal motion and landscape sound. Each world remembers its water level and viewing angle during this visit; reduced motion replaces the spatial flight with a short fade.
NASA Scientific Visualization Studio — CGI Moon Kit ↗ · NASA PDS — LOLA archive ↗
How the ocean appears
At each location, the renderer compares elevation with the selected sea level. Where the terrain is lower, it renders water; where it is higher, it renders land. The coastline is recalculated in the shader as you move the slider. Isolated basins are filled independently, without checking whether they connect to the ocean.
The planet uses a spherical display reference with a radius of 3,389.5 km. Terrain height is enhanced 10× by default to reveal mountains and valleys. In Settings → View, you can compare 1× true scale, 5× and 10×. The same display factor applies to terrain and sea-level displacement. Water classification, sea-level labels and water estimates always use measured elevations. The displayed water surface approximates a constant height relative to the areoid; it is not a gravity solver.
Water color uses the measured difference between sea level and terrain height: turquoise near shore, blue at intermediate depths, and darker blue in deep basins. The palette is an artistic depth cue, not a measurement of water clarity. Gentle, irregular surface ripples change reflections, without displacing the coastline or changing water volume. Pause animation holds their current shape; reduced motion keeps them static.
The mesh starts with 512 × 256 segments on larger screens and 384 × 192 on smaller screens. Sustained rendering performance allows larger screens to increase to 768 × 384. Slower rendering reduces pixel density first, then mesh density, down to 256 × 128. Refining the mesh improves the displayed shape; it does not add measurements to the source elevation grid.
What the numbers mean
Water coverage uses latitude-weighted surface area. Approximate volume integrates water depth over a fixed spherical surface. Both are estimated from the same bilinear terrain reconstruction used by the renderer. The precomputed lookup table is compared with a denser numerical integration; this tests numerical consistency, not the accuracy of a real ocean prediction.
An imagined living landscape
Life & landscapes imagines a habitable Mars with a suitable atmosphere, soil conditions and life already introduced. Sandy deserts, dry grasslands, moist forests, rocky plateaus and cold snowfields blend across the terrain. Measured depressions and crests guide local material contrast, while generated textures add fine grain and rock-layer detail. The surface shape still comes from MOLA; these textures add no measured mountains, geological folds or erosion.
The visual layer stays absent at water coverage of 3% or less, then grows smoothly to full strength at 28%. Local color depends on latitude, measured height above sea level, actual terrain slope, nearby landforms and generated texture fields. Broad dry belts and regional variation provide an artistic moisture pattern; height above sea level is a proxy, not distance to water, rainfall or soil moisture. The temperature pattern is a preset, not a climate prediction. Terrain enhancement and the weather switch do not alter this distribution.
Changing sea level immediately shows a hypothetical equilibrium landscape. Submerged vegetation disappears with the land; lowering the ocean reveals the newly selected landscape. There is no plant-growth clock, species model or ecological succession. Pause freezes display motion while sea-level changes still update the landscape. Turn off Life & landscapes in Settings → Environment to compare with bare Mars.
Snow color favors cold areas with enough hypothetical moisture and slopes gentle enough to retain cover. It is a visual snowline, without snowfall, ice thickness, seasonal balance or glacier flow. Snow does not remove water from the ocean or alter its statistics. Landscape textures are generated once in a background task; if that task fails, the original bare surface remains usable.
A pair in the sky
The Crown-sail hunter (冠帆猎兽) is an imagined descendant of the Twilight Sail-sac. Its story describes a muscle-powered glider with three movable spars on each side supporting a continuous sail membrane, four grasping limbs, a canyon-patrolling lifestyle and a long period of parental flight training. Its imagined adult wingspan is about eight metres. The provided Blender sculpt interprets the creature as a purple, cat-like form; this demo preserves that artwork.
Two enlarged individuals now use a transparent illustration generated from the provided character reference. This is a 2.5D interpretation: a shallow surface follows the globe and carries the illustrated creature, with gentle independent wing movement. It preserves the purple feline face, patterned dark sail membranes and double tail, but does not provide a complete three-dimensional body or every viewing angle. The original Blender sculpt remains saved separately.
Flight follows local terrain and water height, with a small display clearance beneath the cloud layer. Terrain under each surface vertex determines its position, so distant mountains do not raise the whole patrol. Clouds can pass in front of the pair; the world hides it on the far side. Body size, clearance and speed are display choices, not a measured flight altitude or aerodynamic simulation. Hunting, diving, landing, reproduction and evolution are not simulated.
The pair appears when Life & landscapes is enabled and water coverage reaches 8%, an illustrative threshold for the habitable-world scenario. Turning life off or lowering coverage below that threshold hides both. Pause and reduced motion freeze flight and wing movement. The artwork loads separately when first needed; a missing asset does not stop the planet.
Small herds on land
The Shield-crested strider (盾冠行兽) is an imagined descendant of the Slow-moving Carpet. Its story describes six stout legs supporting a broad body, overlapping keratin armor, two feeding arms and dark thermal plates. Adults stand roughly three metres at the shoulder; their fictional herds migrate toward seasonal meltwater and shield their young in a defensive ring.
Up to three small herds each contain four reference-derived illustrated animals, scaled down from the first version. Two larger adults and two smaller followers move along a shared local route, staying close with a little individual variation. A gentle alternating flank motion suggests walking. They remain enlarged for the globe view; smaller followers reuse the same artwork rather than a distinct juvenile model. This 2.5D interpretation preserves the friendly face, warm layered plates and six-legged silhouette, without an articulated leg rig or a complete three-dimensional body.
Life & landscapes and at least 8% water coverage enable the herd. Sites use measured terrain to favor gently varying temperate land with a dry margin around the animal and its route. This is a simple habitat proxy, not an exact grassland, food, rainfall or migration model. Raising water reselects suitable sites or hides the herd when none remain. Artwork is clipped near water and follows local displayed terrain, with normal globe and cloud occlusion.
Pause, reduced motion and hidden-page behavior share the planet clock. No new controls or habitat page are added. Grazing, seasonal meltwater migration, defensive formations, reproduction and evolution remain story elements.
Hunters in the ocean
The Ring-fin stalker (环鳍潜猎者) is an imagined descendant of the Under-ice Light-net. Its fictional five-metre streamlined body has six longitudinal fin ribbons, six sensory lobes, a deployable mouth funnel and connected neural centres. Small groups cooperate while hunting beneath ice and use controlled blue light patterns for communication. These are world-building ideas, not an evolutionary prediction.
Up to three enlarged individuals use a reference-derived transparent illustration, with the head corrected after feedback about excessive twisting. They follow short ocean loops with travelling fin motion. Each spends most of its time in a faint blue-tinted submerged state, occasionally rising into a shallow arc before returning to the water. Impact creates a raised foam crown, droplets and irregular rings that fade at the landing position. Timing is staggered, so the group does not leap together.
The sea remains opaque. Submerged silhouettes are drawn as water-tinted surface proxies with normal depth occlusion; this is not a transparent ocean volume or true underwater refraction. Breaching animals use a shallow curved 2.5D surface, not a fully rigged three-dimensional body. Sizes, speeds and splash energy are enlarged artistic choices.
Life & landscapes and at least 8% water coverage enable the pod where sampled terrain provides a deep-water margin around the body and splash. Changing sea level reselects sites or hides the group; fragments near land are discarded. The selection does not distinguish connected oceans from isolated flooded basins. Pause, reduced motion and a hidden page freeze the common clock, including all spray and foam. Hunting, ice, deployed mouth mechanics, learning and directed communication are not simulated.
Mars and its two moons
Phobos and Deimos use NASA/JPL-Caltech visualization models with their original rocky surface maps. The meshes are simplified and the maps resized for this globe view. The moons remain dry at every sea level. Their bodies are enlarged and their orbital distances compressed for visibility; no orbit lines are drawn.
Phobos moves closer and faster, while Deimos is smaller and farther away. The illustrative circular paths preserve the ratio of their approximate orbital periods, about 7.65 and 30.3 hours. Initial positions, the compressed layout and the face pointing toward Mars are display choices, not a reconstruction of the sky at a particular date. Sunlit and dark sides use the same sunlight direction as Mars. The globe hides a moon when it passes behind it; precise eclipses, cast moon shadows, tides and gravitational coupling are not modeled.
View dragging rotates the system, while automatic Mars rotation and moon motion are separate. Pause and reduced motion freeze both orbits. Use Moons in Settings → Environment to compare the scene without them. A missing moon asset does not prevent Mars or the water controls from working.
NASA Phobos model ↗ · NASA Deimos model ↗ · JPL orbital parameters ↗
What this model leaves out
The optional atmosphere, drifting clouds and cloud shadows visualize hypothetical weather. A generated cloud map moves relative to the terrain; the same map is projected along the sunlight direction to shade land and sea. These are artistic effects, not observations of present-day Mars or a model of evaporation, rainfall or water transport. Display shell heights accommodate exaggerated mountains and do not represent measured atmospheric altitudes.
Ordinary cloud clusters and sparse puffs surround two curled weather systems. Clouds and their shadows stay absent while water covers at most 2% of the surface, then fade in smoothly to full visual strength at 20% coverage. Lowering the water clears them again, including while animation is paused. This coverage rule is an artistic scenario choice, not a condensation or evaporation model; the thin atmosphere remains independently visible when weather is enabled.
This is a terrain inundation experiment. It does not reconstruct an ancient Martian ocean, predict terraforming, or simulate atmospheric pressure, evaporation, ice mass, climate, flow, tides or basin overflow. At the highest slider position, mountains may still remain above water.
Surface colors, ocean shading and a small amount of display fill light are artistic choices. The Sun direction is fixed. Automatic rotation takes about 120 seconds per turn, a presentation speed rather than a Martian day. Seasonal simulation is planned for a later phase.
Controls and accessibility
- Drag Sea level or focus it and use the arrow keys. Home and End select the range limits; Page Up and Page Down move in 500 m steps.
- Drag the planet horizontally to look around. On desktop, vertical dragging also changes the viewing angle. On a phone, vertical swipes scroll the page and two fingers zoom.
- Settings → View contains Look around buttons for keyboard rotation, zoom and reset. Reset view preserves your sea level.
- Pause animation in Settings → View stops automatic rotation, drifting clouds and animated surface detail. Your reduced motion preference disables those effects automatically.
- The Atmosphere & clouds button in Settings → Environment toggles the weather layer for a clear coastline view. Slower rendering can disable cloud shadows automatically.
- If WebGL2 is unavailable, a clearly identified static preview and this explanation remain available.
Settings is a small overlay with Environment, View and Sound tabs. Use the arrow keys, Home and End to switch its tabs, or Escape to close it. Panels keep the globe in the same position. On small screens, they open from the bottom and scroll internally.
The Field Guide entry appears only with Life enabled and at least 8% water coverage. Its illustrations and species count reflect animals with suitable land or deep-water routes on the current world. Camera rotation does not change eligibility. Reading pauses the scene and fades landscape and animal sounds while background music continues; closing returns to your existing animation and sound preferences. Escape closes the guide and returns focus to its entry.
A quiet, imagined soundscape
Sound starts muted and is enabled by choice. A soft space ambience accompanies the landscape near the centre of the globe: calm water, leaves and wind. Creature sounds are sparse; visible water impacts follow the illustrated animals’ actual breach phase. These are artistic listening perspectives, not sounds travelling through a vacuum. Rapid rotation softens the landscape and holds new creature sounds until the view settles. Pause and guide reading fade scene effects while background music continues, including during world travel. Leaving the globe or hiding the page fades and suspends all audio.
Ocean sounds are edited from Jasinski’s Alki Beach recording; leaf textures and footsteps use qubodup’s dry-leaf foley, softly recomposed with synthetic air. Both original recordings are CC0. Space ambience and imagined animal voices are original synthesis; the creatures’ voices are interpretations, not recordings of real species.
Background music: The Mountain Is Calling (feat. Gildaa)
Jasinski — beach ocean waves (CC0) ↗
qubodup — dry-leaf rustles (CC0) ↗
Credits and reproducibility
Elevation: NASA / GSFC / MGS MOLA Science Team, distributed by the NASA PDS Geosciences Node. The static poster is an original rendering of the same elevation data. No Apple imagery, fonts or page assets are used.
The source labels, source checksums, conversion script and processing report are preserved in the project. The browser checks asset integrity before rendering. Data packages use content-based version identifiers so terrain and statistics stay together.
Choose English or 中文 with Language in Settings. Your choice is remembered in this browser; switching preserves the current world and water level.