Files
calic 1a99e22e1f prototype-blob-geom: migrate bake pipeline to node atlas-baker v0.2.0
Python atlas_pack.py was a stop-gap substitute while davoryn was
down (preventing pull of the real node baker). With sporel-tool-
atlas-baker v0.2.0 shipping padding + blob-14 schema validation +
collision sidecar pass-through + alpha-analysis opaque flag, the
Python substitute is no longer needed.

Changes:

  - scripts/atlas_pack.py removed
  - scripts/bake_testbench.py: drop atlas_pack import + pack() call;
    now produces source PNGs only. Node baker does the packing.
  - scripts/bake_singles.py: same simplification, plus copies the
    shared blob_rectilinear collision.json into each single-material
    source dir (so atlas-baker E2 validation finds the sidecar).
  - scripts/bake.sh: rewritten to call the node baker for all 8
    atlases. Single-material variants (4 base styles + 3 tinted
    singles) bake with `--schema blob-14` for E1+E2 validation.
    Mixed-material blob_testbench bakes without --schema (42 tiles
    don't match the canonical 14-slot pattern).
  - 3 collision.json copies committed under assets/_sources/blob_
    rect_{stone,grass,wood}/ — same content as the shared
    blob_rectilinear one (since these single-material atlases share
    the same blob geometry).

Single codepath for atlas production now: node baker only. No more
two-tool drift. Future-Python-changes to source generation auto-
flow through to baked atlases via bake.sh.

End-to-end verification: bake.sh produces 8 atlases cleanly; all
single-material bakes pass --schema blob-14 + collision validation;
opaque flag set on slot_13_solid (alpha-all-255), absent on the
other slots (transparent regions). SPOREL_CI=1 vagrant-skeleton
rc=0 with both blob_testbench (legacy multi-material) and
blob_rect_stone (vertex-painted single-material) loading correctly.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-28 22:55:05 +02:00
..