Add MrGameEng.Atlases: texture atlas builder, runtime loader and CLI tool
CI / build-test (push) Failing after 1m13s

AtlasBuilder packs a directory tree of loose images into atlas pages plus
JSON metadata (deterministic shelf packing, incremental rebuilds, orphan
cleanup); TextureAtlas loads them back handing out Texture2DRegions, so
sprites from one page batch into a single draw call. The asset handle
generator maps .atlas files to TextureAtlas and skips page images.
Demonstrated in the sample (Assets/Atlases + 'atlas' console command),
wrapped as tools/MrGameEng.AtlasTool for build scripts.

Documented dependency exception: Atlases depends on Graphics and Assets.
This commit is contained in:
Leonid Pershin
2026-06-11 08:18:30 +03:00
parent d6f19b9119
commit b318d1e795
21 changed files with 1209 additions and 1 deletions
@@ -0,0 +1,31 @@
{
"version": 1,
"name": "Textures",
"pageSize": 2048,
"padding": 2,
"pages": [
{
"file": "Textures.atlas.0.png",
"width": 256,
"height": 128
}
],
"regions": [
{
"key": "player",
"page": 0,
"x": 68,
"y": 2,
"w": 64,
"h": 32
},
{
"key": "shapes",
"page": 0,
"x": 2,
"y": 2,
"w": 64,
"h": 64
}
]
}
Binary file not shown.

After

Width:  |  Height:  |  Size: 3.0 KiB