Added earth surface texture

This commit is contained in:
connor committed 2026-10-14 20:12:49 -04:00
1 parent 5b802b4455
commit e77d68d0a6
27 files changed
+1284 -93

No files matched your search

+16 -3
View File
@@ -21,9 +21,12 @@ on the CPU through Mesa's lavapipe (`vulkan-swrast` on Arch,
## Performance and fidelity
Lighting and camera fidelity are chosen separately: lighting tiers L0 to L3,
camera tiers C0 to C3. A row is added here as each tier lands, with its
measured cost and a sample image from the same scene, so the cost of each step
up is visible at a glance.
camera tiers C0 to C3, set with `RendererOptions::fidelity` in the library and
`--lighting` and `--camera` on the command line. A tier is a fixed bundle of
features, and a tier that needs data (L1 needs an image of Earth's surface)
refuses to start without it. A row is added here as each tier is complete, with
its measured cost and a sample image from the same scene, so the cost of each
step up is visible at a glance.
| Tier | Lighting | Camera | RTX 3060 | lavapipe (CPU) | Sample |
|---|---|---|---|---|---|
@@ -95,6 +98,10 @@ in the repository, and the rest use NASA spacecraft models (Landsat 8,
ICESat-2, OSTM/Jason-2, an SSL-1300 and ACE) that `scripts/fetch-models.sh`
downloads into `examples/models/nasa/`. That script needs Node (for `npx`),
because most NASA models are Draco-compressed and are decoded on the way in.
At lighting L1, Earth's surface comes from NASA's Blue Marble, which
`scripts/fetch-earth.sh` downloads and resizes (with ImageMagick) into
`data/earth/`, one image per month. The month comes from the scene's epoch, or
from `[appearance] earth_month` in a scene without one.
```sh
cargo run --release -p resolved-cli -- render \
@@ -108,6 +115,12 @@ cargo run --release -p resolved-cli -- render \
- `--preview` writes an 8-bit sRGB image for looking at, with the bias as
black and saturation as white.
- `--timings N` renders N frames and reports setup and per-frame times.
- `--lighting L0|L1` and `--camera C0` pick the fidelity tiers (default L0
and C0). A tier the scene or the data cannot support stops with an error
naming what is missing.
- `--data DIR` says where the tiers' data is (`earth/bmng-2004-MM.jpg`).
Without it the CLI tries `RESOLVED_DATA`, then `./data`, then the
repository's `data/`.
- `--adapter` takes `auto`, `gpu`, `cpu` or part of an adapter's name;
`resolved adapters` lists them.
- `--kernels DIR` says where astrokit's kernels are, for scenes given by