Files
REM-Mod/DATA/SOLAR/PLANETS/ls_sol/HD_TEXTURES.md
T
flathackandClaude Opus 5.5 3fb09b1458 Sol Skies: the solar system Sol01 and the jump drives, part 1/5
The server takes at most a few hundred MB a push: this comes in parts.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-12 15:08:52 +01:00

92 lines
4.9 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# SOL HD textures
The HD pack replaces the diffuse textures of all eight planets and Earth's Moon,
plus Sol's skybox. Each body has six independent 4096 × 4096 BC1 faces with
13 mip levels. The sky has six 4096 × 4096 BGRA8 faces with 13 mip levels.
Mipmaps are filtered in linear light. The other moons, dwarf planets, rings,
sun and system layout retain their existing assets.
The source maps are reprojected onto Freelancer's cubed spheres without mirroring
the poles. Earth combines a geographic surface map with its cloud-opacity map.
Materials use a neutral detail texture instead of repeating the retail craters
or cloud noise over the photographic maps. These are diffuse textures: they do
not add geometry, terrain displacement or a separately moving cloud shell.
| Body | Source dimensions | Installed faces |
| --- | --- | --- |
| Mercury, Earth, Mars, Jupiter, Saturn | 8192 × 4096 | 6 × 4096² |
| Venus cloud envelope | 4096 × 2048 | 6 × 4096² |
| Uranus, Neptune | 2048 × 1024 | 6 × 4096² |
| Moon (LROC 2019 color map) | 16384 × 8192 | 6 × 4096² |
| Sky (NASA Deep Star Maps 2020) | 16384 × 8192 | 6 × 4096² |
Output dimensions are not the same as observational resolution: the Uranus,
Neptune and Venus maps contain less fine detail. Solar System Scope's maps
include artistic color tuning and filled gaps, as described by their author.
The NASA sky preserves the published J2000 star positions and the existing
Sol ecliptic orientation; it is a display-exposed sky, not an exposure simulation.
## Rebuild
Requires Python, NumPy, Pillow with its BC1 DDS encoder, and OpenCV with OpenEXR.
```powershell
python tools/build_sol_hd_textures.py --download
python tools/build_sol_hd_textures.py --planets --jobs 3 --resume
python tools/build_sol_hd_textures.py --sky
# Close the game, then install:
python tools/build_sol_hd_textures.py --install
python tools/verify_sol_hd_textures.py
```
Sources are cached in `tools/texture_sources/`. Exact URLs, credits and hashes
are in `sol_texture_sources.json` and `texture_build/source_manifest.json`.
Build products, read-back previews, validation reports and runtime screenshots
are in `tools/texture_build/`. Installation backs up all replaced files under
`tools/backups/sol-textures-<timestamp>/` before copying the staged outputs.
Restore those files to the same relative paths to revert. Files newly added by
the HD pack can remain unused after restoring the original INIs and libraries.
The original `make_planet_textures.py` and `make_sol_skybox.py` remain available
as procedural alternatives; running them over the live pack replaces the HD maps.
`planet_looks.json` is updated so subsequent system rebuilds retain the HD materials.
The renderer also needs the local source changes: `RemGfx/rg_sky.cpp` keeps 4K
sky faces instead of reducing them to 2K; `RendComp/Plugins.cpp` recognizes the
Sol material names as gas/cloud or Earth materials. The installed renderer
configuration also enables 16× anisotropic filtering. Build Release/x64 RP8 and
RendComp and copy their DLLs to `GAME/EXE`. The installed pack occupies about
1.1 GiB, plus the renderer's GPU copies; loading and memory usage increase.
## Verification (2026-11-11)
Release/x64 RP8 and RendComp builds passed. All 54 planet faces and six sky
faces passed container, format, mip-count and material-reference checks;
the planet face-edge checks passed. Unrelated system data and solar archetypes
were compared with the backup and preserved.
Earth and Jupiter were visually checked in the running game. Both runs captured
screenshots and completed without a crash, renderer errors or new engine warnings.
The runtime log confirms `4096x4096 faces -> cube 4096 (13 mips)`.
Reports: `texture_build/validation.json` and `texture_build/runtime/runtime-validation.json`.
The Earth before/after comparison is `texture_build/previews/earth_before_after.jpg`.
The first full-install backup is `tools/backups/sol-textures-20261111-202729/`.
## Credits
Planet and Earth cloud textures by **Solar System Scope / INOVE**,
[Solar Textures](https://www.solarsystemscope.com/textures/), used under
[Creative Commons Attribution 4.0](https://creativecommons.org/licenses/by/4.0/).
Changes: spherical reprojection, Earth surface/cloud compositing, mip generation,
BC1 compression and Freelancer material packaging.
Moon: **NASA/Goddard Space Flight Center Scientific Visualization Studio**, LRO/LROC,
visualization by **Ernie Wright**, [CGI Moon Kit](https://svs.gsfc.nasa.gov/4720/),
2019 color map. Changes: spherical reprojection, mip generation and BC1 packaging.
Sky: **NASA/Goddard Space Flight Center Scientific Visualization Studio**,
**Ernie Wright**, [Deep Star Maps 2020](https://svs.gsfc.nasa.gov/4851/), using
Hipparcos-2, Tycho-2 and Gaia DR2 catalog data. Changes: J2000-to-game coordinate
conversion, cube reprojection, display transfer, dithering and mip generation.
No endorsement by NASA, ESA or the texture authors is implied.