ludic/changes/baked-textures.md
Orkuncakilkaya 967f15ded9 render3d: baked textures before the PNG - a png_decode takes assets/baked/png, a cut-out load assets/baked/cutouts
baked_tex.ludic reads ludic.base's baked form by hand (render3d uses no package): the LBAK header, the
key ("png_sheets" / "cutouts", the Bakes rows) and the generator version, then the payload -
w, h, channels, depth and the samples for a PNG (the caller frees them as it would a decode), a whole
.dds for a cut-out (tex_load_dds_at: a .dds at an offset). Missing, or another key or version, and the
PNG path runs as before. Compiles with Maroon Lake (game, lab, lab/bake/textures).

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-09-29 17:30:57 +03:00

633 B

bump: minor type: feature Textures a game baked at build time are read before the PNG. png_decode first takes assets/baked/png/<path>.tex (a game's ludic bake output: the samples, ready to upload), and a cut-out load (tex_load_ex with dilate) first takes assets/baked/cutouts/<path>.bc7 (padded as tex_dilate pads, then BC7 with its mips) - so a boot decodes, pads and converts nothing it can take ready-made. Both are ludic.base's baked form, read by hand (baked_tex.ludic: the "LBAK" header, the key and version); a missing or stale one falls back to the PNG as before. tex_load_dds_at reads a .dds at an offset.