Replace the atlas_body_heightmaps DB-BLOB loader with a per-body file loader (D-202 amendment): heightmap.rs reads the 16-bit grayscale heightmap.png (via the new png dep) from the body's terrain_reference path, normalizes to f32 [0,1], and rejects RGB so a reliefmap can't be misread as elevation. Adds BodyHeightmap::downsample (box-average, deterministic) so Layer 1 drops the high-res stored heightmap to the 512x256 working resolution. sea_level becomes body metadata carried alongside, not in the PNG. 4 loader tests pass. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
53 lines
1.7 KiB
TOML
53 lines
1.7 KiB
TOML
[package]
|
|
name = "settled-reach-server"
|
|
version = "0.2.0"
|
|
edition = "2021"
|
|
publish = false
|
|
|
|
[dependencies]
|
|
bevy_ecs = "0.18"
|
|
bevy_app = "0.18"
|
|
# multi_threaded enables Bevy's parallel system executor (no explicit import needed —
|
|
# bevy_ecs detects the feature on its bevy_tasks dependency at compile time).
|
|
bevy_tasks = { version = "0.18", features = ["multi_threaded"] }
|
|
# par_iter infrastructure for data-parallel systems. Not yet called — candidate
|
|
# systems marked with TODO comments. Active use begins when profiling shows bottlenecks.
|
|
rayon = "1"
|
|
serde = { version = "1", features = ["derive"] }
|
|
serde_yaml = "0.9"
|
|
ron = "0.8"
|
|
rmp-serde = "1"
|
|
rand = "0.9"
|
|
rand_chacha = "0.9"
|
|
pathfinding = "4.11"
|
|
thiserror = "2"
|
|
tracing = "0.1"
|
|
tracing-subscriber = { version = "0.3", features = ["env-filter", "json"] }
|
|
clap = { version = "4", features = ["derive"] }
|
|
crossbeam-channel = "0.5"
|
|
sysinfo = "0.35"
|
|
serde_json = "1"
|
|
rusqlite = { version = "0.32", features = ["bundled"] }
|
|
bytemuck = "1"
|
|
png = "0.17"
|
|
toml = "0.8"
|
|
aho-corasick = "1"
|
|
# Economics simulation — Leontief + tâtonnement + D-180 event port (#821)
|
|
econ-sim = { path = "../tooling/econ-sim" }
|
|
|
|
[features]
|
|
default = ["gauntlet"]
|
|
gauntlet = []
|
|
|
|
[dev-dependencies]
|
|
|
|
# ---------------------------------------------------------------------------
|
|
# Explicit test target for the Layer 3 integration module (D-030, ticket #200).
|
|
# tests/integration/mod.rs cannot be auto-discovered by cargo (only top-level
|
|
# *.rs files in tests/ are auto-discovered). This declaration makes it a named
|
|
# test binary: `cargo test --test integration_layer3`.
|
|
# ---------------------------------------------------------------------------
|
|
[[test]]
|
|
name = "integration_layer3"
|
|
path = "tests/integration/mod.rs"
|