Tune large battle map render resolution
@@ -11,9 +11,16 @@ The first thirty campaign battles now use the same hand-painted tactical map pip
|
||||
- Roads, forests, rivers, camps, villages, cliffs, and forts should be recognizable by silhouette and texture, not by high saturation.
|
||||
- The grid remains subtle and embedded in the paint grade, so it helps targeting without becoming the main visual layer.
|
||||
|
||||
## Resolution Policy
|
||||
|
||||
- Battles 1-25 keep the original 224px hand-painted tile target.
|
||||
- Large maps starting at battle 26 use a 192px tile target through `LARGE_MAP_TILE_SIZE` in the generator.
|
||||
- Re-evaluate the tile target before a generated map's longest edge exceeds roughly 16,384px at 192px per tile.
|
||||
- Use `--tile-size` only for controlled comparisons; commit the selected production size in the map config.
|
||||
|
||||
## Generator
|
||||
|
||||
`scripts/generate-handpaint-map-sample.py` reads terrain and unit positions from `src/game/data/scenario.ts`, then outputs a WebP map and documentation previews.
|
||||
`scripts/generate-handpaint-map-sample.py` reads terrain and unit positions from `src/game/data/scenario.ts`, then outputs a WebP map and documentation previews. Map configs can set `tile_size`; otherwise the default is 224px.
|
||||
|
||||
Example:
|
||||
|
||||
@@ -49,6 +56,12 @@ python scripts/generate-handpaint-map-sample.py --map twenty-ninth --webp-qualit
|
||||
python scripts/generate-handpaint-map-sample.py --map thirtieth --webp-quality 90
|
||||
```
|
||||
|
||||
Comparison example:
|
||||
|
||||
```powershell
|
||||
python scripts/generate-handpaint-map-sample.py --map thirtieth --tile-size 192 --out tmp\thirtieth-battle-map-192-test.webp --comparison tmp\thirtieth-battle-map-192-test-before-after.png --preview tmp\thirtieth-battle-map-192-test-preview.png --webp-quality 90
|
||||
```
|
||||
|
||||
## Current Assets
|
||||
|
||||
- `src/assets/images/battle/first-battle-map.webp`
|
||||
|
||||
|
Before Width: | Height: | Size: 1.8 MiB After Width: | Height: | Size: 1.9 MiB |
|
Before Width: | Height: | Size: 1.6 MiB After Width: | Height: | Size: 1.7 MiB |
|
Before Width: | Height: | Size: 1.7 MiB After Width: | Height: | Size: 1.8 MiB |
|
Before Width: | Height: | Size: 1.5 MiB After Width: | Height: | Size: 1.6 MiB |
|
Before Width: | Height: | Size: 1.9 MiB After Width: | Height: | Size: 2.0 MiB |
|
Before Width: | Height: | Size: 1.6 MiB After Width: | Height: | Size: 1.7 MiB |
|
Before Width: | Height: | Size: 1.8 MiB After Width: | Height: | Size: 1.9 MiB |
|
Before Width: | Height: | Size: 1.5 MiB After Width: | Height: | Size: 1.6 MiB |
|
Before Width: | Height: | Size: 1.6 MiB After Width: | Height: | Size: 1.7 MiB |
|
Before Width: | Height: | Size: 1.4 MiB After Width: | Height: | Size: 1.4 MiB |