YAAP (Yet Another Atlas Packer). Built with Odin, Raylib, stb_rect_pack & odin-aseprite.
Find a file
2026-01-02 21:13:34 +02:00
examples Update dependencies, refresh README.md, add build scripts for linux(& macos?) 2026-01-02 15:06:34 +02:00
resources Major refactor: 2024-08-30 18:05:56 +03:00
scripts Refactor depencies, add clay to the repo in preparation to move from raygui to clay 2026-01-02 21:13:34 +02:00
src Refactor depencies, add clay to the repo in preparation to move from raygui to clay 2026-01-02 21:13:34 +02:00
vendors Refactor depencies, add clay to the repo in preparation to move from raygui to clay 2026-01-02 21:13:34 +02:00
.gitignore Refactor depencies, add clay to the repo in preparation to move from raygui to clay 2026-01-02 21:13:34 +02:00
.gitmodules Update dependencies, refresh README.md, add build scripts for linux(& macos?) 2026-01-02 15:06:34 +02:00
LICENSE init 2024-04-19 20:41:22 +03:00
odinfmt.json working demo of what the metdata exporter is supposed to do 2024-04-23 19:17:38 +03:00
README.md Refactor depencies, add clay to the repo in preparation to move from raygui to clay 2026-01-02 21:13:34 +02:00

YAAP

Yet-Another-Atlas-Packer by bersK (Stefan Stefanov)

Usage & requirements

Important

Pull this repo with --recursive, the odin-aseprite library is pulled in as a submodule.

At least odin compiler version dev-2025-07:204edd0fc

Since we need to download/compile some 3rd party dependencies in the vendors folder we need to call scripts/setup.[sh|bat] to compile libtinydialog & download the already compiled clay binaries and bindings.

Description

Note

Quite frankly if you want automatic atlas packing I would suggest using stb_rect_pack directly & an aseprite plugin for exporting your assets in a proper format for packing. Using this atlas packer in an automated fashion is not quite possible and slower as a workflow. I would only use it for experiment projects or places where having a built in atlas packer is not practical.

Simple atlas packer for .aseprite files. Generates a packed png & metadata in the form of json and/or source files(cpp, odin, etc...).

Caution

Does not handle palette files currently.

Uses stb_rect_pack for the image packing & raylib for the UI.

A quick preview on youtube.

Dependencies

  • odin-aseprite github
  • raylib (vendor/raylib, link)
  • stb_rect_pack (vendor/stb/rect_pack, link)