Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

srb asset — Manage Assets

The srb asset subcommand groups together asset-management actions. It acts as the manager for real terrain assets, rock sets, HDRI skydomes, and lighting presets. It allows you to download and bake planetary surface terrains, validate local caches, manage the curated-site manifest, and monitor cache statistics.

Usage

srb asset <action> [options]

Actions

ActionPurpose
thumbnailRender thumbnails for registered assets. (Deprecated; use srb doc thumbnail instead)
listList available assets for a given kind (terrain, rocks, hdri, lights).
infoShow detailed catalog specifications for a specific asset target.
doctorPreflight check the local cache health and preview rendering for a terrain site.
downloadFetch a remote planetary asset from the registry and bake it into USD/USDZ format.
bakeImport and bake terrain from a user-supplied Digital Elevation Model (DEM) file.
cleanSafely remove raw downloads, baked USD cache, or all assets of a specific kind.
validate-manifestValidate the syntax of the curated planetary sites manifest (optionally checking URLs/SHAs).
cache-statsPrint total cache size, entry count, and path utilization across all asset types.
stackPreview the resolved v2 source-composition plan for a region (layers, resolution, byte estimate) without downloading anything.
prefetch-fixturesAutomatically download and pre-bake all manifest terrain sites at low level of detail (lod=low).

Kind Choices

Many asset commands accept a KIND positional argument. The supported asset kinds are:

  • terrain: Planetary site Digital Elevation Models (DEMs) and orthophotos.
  • rocks: Procedural or photogrammetric rock sets.
  • hdri: High Dynamic Range Image skydomes.
  • lights: Curated environmental lighting presets.

srb asset list

List available assets registered in the catalog for the specified asset kind.

srb asset list KIND [--body {moon,mars,earth}]
  • KIND: Must be one of: terrain, rocks, hdri, lights.
  • --body {moon,mars,earth}: (Optional) Restrict the listed assets to a specific celestial body.

srb asset info

Show detailed metadata and catalog specifications for one specific asset.

srb asset info KIND TARGET
  • KIND: One of: terrain, rocks, hdri, lights.
  • TARGET: The name of the specific site, rock set, skydome, or lighting preset to inspect.

srb asset doctor

Preflight check the local cache health for a terrain site. This command resolves local elevation meshes, processes coordinates, and checks the asset for rendering issues.

srb asset doctor terrain [TARGET] [options]
  • TARGET: (Optional) The target terrain site name to verify.
  • --body {moon,mars,earth}: Specify the celestial body.
  • --patch PATCH: Patch name to verify (default: default).
  • --lod {low,medium,high}: Level of Detail to verify (default: medium).
  • --patch-size SIZE: Patch size in meters (float).
  • --center X,Y: Center coordinates in meters (e.g. 100.0,200.0).
  • --no-ortho: Disable checking/generating the orthophoto.
  • --seed SEED: Random seed for procedurals (default: 0).

srb asset download

Fetch remote planetary asset data from registry mirrors and bake it into a ready-to-render USD/USDZ representation under the local cache.

srb asset download KIND [TARGET] [options]
  • KIND: One of: terrain, rocks, hdri, lights.
  • TARGET: The name of the specific asset target to download and bake.
  • --all: Fetch and bake all registered assets of this kind.
  • --body {moon,mars,earth}: (Terrain only) Celestial body name.
  • --patch PATCH: (Terrain only) Patch name (default: default).
  • --lod {low,medium,high}: (Terrain only) Level of Detail (default: medium).
  • --patch-size SIZE: (Terrain only) Patch size in meters (float).
  • --center X,Y: (Terrain only) Center coordinates in meters.
  • --no-ortho: (Terrain only) Skip orthophoto baking.
  • --seed SEED: (Terrain only) Random seed for procedurals (default: 0).
  • --force: Re-download and re-bake even if a valid entry is already cached.
  • --debug: Enable verbose debug logging of downloading/baking pipelines.

srb asset bake

Bake a custom planetary surface terrain from a user-supplied local Digital Elevation Model (DEM) raster file.

srb asset bake terrain --dem DEM_PATH --body {moon,mars,earth} --site-name NAME --attribution ATTR [options]
  • --dem DEM_PATH: (Required) Absolute or relative path to the user-supplied DEM file (e.g., GeoTIFF).
  • --body {moon,mars,earth}: (Required) Target celestial body.
  • --site-name NAME: (Required) Name to register this custom terrain site under.
  • --attribution ATTR: (Required) Data source/attribution string to embed in the metadata.
  • --patch-size SIZE: Patch size in meters (float).
  • --lod {low,medium,high}: Level of Detail for the baked mesh (default: medium).
  • --seed SEED: Random seed for procedural rocks/displacement (default: 0).
  • --debug: Enable verbose debug logging during mesh generation.

srb asset clean

Remove cached raw download archives, baked USD files, or all local cache entries for a specific asset kind.

srb asset clean KIND [TARGET] [options]
  • KIND: One of: terrain, rocks, hdri, lights. Only terrain is currently supported by the clean handler — the other kinds parse but exit with clean: unsupported kind.
  • TARGET: (Optional) Clean cache only for the specified target name.
  • --raw: Remove only the raw downloaded zip/tar archives.
  • --baked: Remove only the processed, baked USD/USDZ asset cache.
  • --all: Remove all cache entries (both raw and baked) for the specified kind/target.

srb asset validate-manifest

Validate the schema and integrity of the curated planetary sites manifest file.

srb asset validate-manifest [--manifest MANIFEST_PATH] [--check-urls] [--check-shas]
  • --manifest MANIFEST_PATH: (Optional) Path to a custom manifest YAML. If omitted, uses the default packaged manifest.
  • --check-urls: Send HTTP requests to verify that all remote download mirrors and links are live and reachable.
  • --check-shas: Verify the SHA256 checksums of any downloaded raw datasets against the manifest declarations.

srb asset cache-stats

Display human-readable usage statistics for the local asset cache, including directory paths, file counts, and total disk space used by each asset kind.

srb asset cache-stats

srb asset stack

Preview the resolved real-terrain-v2 CompositionPlan for a region: which catalog layers would be used, at what resolution, how many bytes they would cost to fetch, and which of them still need consent — before anything downloads. This command never contacts the network and never moves a byte; it is a pure, offline preview over the already-loaded source catalog.

srb asset stack --body {moon,mars,earth} --lat LAT --lon LON --size SIZE [options]
  • --body {moon,mars,earth}: (Required) Target celestial body.
  • --lat LAT: (Required) Latitude in degrees.
  • --lon LON: (Required) Longitude in degrees.
  • --size SIZE: (Required) Region size in meters (capped at 8000 m; larger requests are refused with a pointer to the deferred tiling design).
  • --lod {low,medium,high}: Level of Detail (default: medium).
  • --target-gsd GSD: Override the target ground-sample distance in meters.
  • --catalog PATH: Override the shipped catalog with a YAML file at PATH (mainly for testing against a fixture catalog).
  • --allow-large: Preview the plan as if large downloads were approved (this command never downloads).
  • --json: Emit the plan as JSON instead of a formatted table.

The printed “consent required” line is a descriptive preview, not an authorization: the real, per-layer enforcement gate lives in the fetch path (srb.terrain.sources.acquisition.check_layer_consent) and is re-derived independently at fetch time. Seeing “consent required: none” here — whether because --allow-large was passed or because SRB_TERRAIN_LARGE_OK=1 is set — does not skip or perform any fetch.


srb asset prefetch-fixtures

Prefetch all curated terrain sites from the manifest at a low Level of Detail (lod=low). This is highly recommended to warm up local caches and allow headless or offline test suites to run immediately.

srb asset prefetch-fixtures

Examples

# List all registered lunar terrain sites
srb asset list terrain --body moon

# Get detailed specifications for a specific Martian terrain site
srb asset info terrain jezero

# Download and bake Jezero Crater at high level of detail
srb asset download terrain jezero --lod high

# Bake a custom terrain from a local GeoTIFF file
srb asset bake terrain \
  --dem /path/to/my_dem.tif \
  --body moon \
  --site-name Shackleton_Ridge \
  --attribution "LOLA / Kaguya Team" \
  --lod high

# Preflight check local cache for Jezero Crater terrain
srb asset doctor terrain jezero --lod high

# Clean only the baked USD terrain cache
srb asset clean terrain --baked

# Check total disk space consumed by the SRB asset cache
srb asset cache-stats