---
title: Sprite Atlas Optimization
category: product
entity_type: skill
price: $15
canonical: https://forgehouse.ai/skills/sprite-atlas-optimization/
lang: en
hreflang_alt: https://forgehouse.ai/tr/skiller/sprite-atlas-optimization/
last_updated: 2026-06-20
---

# Sprite Atlas Optimization

> Pack Aseprite/PNG sprites into Unity SpriteAtlas with correct padding, POT sizing, compression…

A deterministic pipeline for packing Aseprite and PNG sprites into Unity 6 SpriteAtlas the right way: correct padding, power-of-two sizing, per-platform compression, and a low/mid/high tier strategy with Addressables bundle splits. It collapses draw calls from dozens to single digits and eases mobile GPU memory pressure while preventing the bleed, POT, and tier-drift bugs that ship broken builds.

## Use cases
- Drop draw calls when sprite batching breaks
- Pack 200+ exported PNGs into shared atlases
- Fix sprite bleed (translucent edge lines)
- Set ASTC vs ETC2 compression per platform
- Split atlases into Addressables tier bundles
- Tier-switch atlases for low-end Android devices

## Benefits
- Slash draw calls by an order of magnitude with batched atlases
- Lower mobile GPU memory and avoid thermal throttling
- Keep bundles under App Store and Play Store size limits
- Render crisp, bleed-free sprites that read as polished

## What’s included
- MaxRects packing settings with mandatory 2px padding
- Platform compression matrix (ASTC, ETC2, PVRTC, DXT5)
- Low/mid/high tier strategy with runtime device profiling
- Four-layer bleed-prevention defensive pattern
- Power-of-two enforcer that hard-blocks broken atlases
- Domain-split bundle layout and verification checklist

## Who it’s for
Unity 2D game developers shipping to mobile who need fewer draw calls, smaller builds, and clean sprites across a range of devices.

## How it runs
A single mispacked atlas can drop a mobile game below 30fps or blow the 200MB OTA limit. The pipeline splits sprites by domain, enforces power-of-two sizing, stacks four bleed defenses, and ships tier-switchable bundles per device class.
1. Reads the project PPU constant from GameConstants (64 or 128) as the fixed input, then splits sprites into domain atlases instead of one mega texture: Atlas_Characters, Atlas_UI, Atlas_Environment per biome, Atlas_FX. If one bundle fails to download, the others keep rendering.
2. Packs each atlas with MaxRects (Best Short Side Fit), padding 2px minimum, rotation and tight packing both OFF for isometric tiles, and enforces power-of-two sizes (1024/2048/4096) through an AssetPostprocessor that hard-rejects any non-POT atlas before it can break compression.
3. Applies the platform compression matrix: ASTC 6x6 on iOS and modern Android, ETC2 RGBA8 fallback for API 21-25 devices, all driven from a single PlatformCompression asset. Per-sprite Inspector overrides are banned because they cause silent drift.
4. Builds three tier variants per atlas (low 1024 ASTC 8x8, mid 2048 ASTC 6x6, high 2048 at 128 PPU) and tags them with Addressables labels. At runtime AtlasTierManager reads device RAM, VRAM and GPU name to pick the tier, so a 2GB Android never loads the iPad-class atlas.
5. Stacks four bleed defenses at once: Aseprite extrude 1px at export, packer padding 2px, Point filtering with mipmaps off, and linear color. If any single layer is violated the others still prevent the half-transparent edge line players report as glitched graphics.
6. Verifies against the checklist before sign-off: Batches under 20 and SetPass calls under 10 in the Stats window, zero bleed on a Pixel Perfect Camera screenshot, and the high-tier install bundle under the 200MB App Store OTA limit.

## FAQ
### We ship to PC, not mobile. Is this still relevant?
Partially. The compression matrix (ASTC, ETC2, PVRTC) and the low/mid/high tier strategy exist for mobile GPU and store-size limits. But the draw-call batching, mandatory 2px padding, and the four-layer bleed-prevention pattern apply to any Unity 2D project where sprites render with translucent edge lines or batching breaks.

### Unity packs SpriteAtlas automatically. What does this add over the defaults?
Default settings are where bleed, non-POT atlases, and tier drift come from. This is a deterministic pipeline: MaxRects settings with enforced padding, a power-of-two enforcer that hard-blocks broken atlases before they ship, and a per-platform compression decision instead of one global setting.

### Does it produce the sprites or animations themselves?
No. It packs Aseprite and PNG exports you already have into atlases and Addressables bundles. Drawing characters, animation tags, and pivot discipline happen upstream in your art pipeline; this package starts at the moment the PNGs exist.

## Price
$15, one-time, no subscription. VAT included.

Related guide: [A 2.5D isometric game-dev AI workflow with Unity](https://forgehouse.ai/guides/unity-isometric-ai-workflow/)
