Створення 2D-спрайтів для мобільних ігор
2D-спрайти для мобільних ігор — це не просто рисунки. Це текстурні атласи, анімовані листи, оптимізовані під GPU-компресію та вписані в бюджет draw call рушія. Художник, який не розуміє конвеєр від Photoshop до робочої анімації в Unity, створює красиві картинки, що обваляють FPS на Android до неіграбельного рівня.
Технічний контекст для спрайтів
Sprite atlas. Багато окремих PNG-файлів означає багато draw calls. Один атлас 2048×2048 з 50 спрайтів дорівнює одному draw call. У Unity: Sprite Atlas через Package Manager, автоматичне упакування через SpriteAtlas.Pack(). У Godot: AtlasTexture. Для 2D-ігор зі сотнями спрайтів атласи обов'язкові — інакше середньорядкові Android не витримають.
Компресія текстур. PNG на пристрої займає місце в памяті в некомпресованому вигляді — 2048×2048 RGBA = 16 МБ GPU-пам'яті. Потрібна GPU-нативна компресія: ASTC 6x6 для iOS (iPhone 6+) та сучасного Android, ETC2 для старих Android (API 18+). У Unity TextureImporter — Compression: High Quality, Format: ASTC 6x6. Втрата якості при ASTC мінімальна для ігрової графіки, економія пам'яті — у 6–8 разів.
Pivot та Pixels Per Unit. Pivot спрайта (точка обертання) має відповідати логічній точці об'єкта — для персонажа це основа ніг, для снаряда — центр. Pixels Per Unit визначає масштаб у світових координатах. Невідповідність PPU між спрайтами приводить до персонажів розміром з вежу або пікселів розміром з екран.
Анімація спрайтів
Spritesheet проти окремих кадрів. Spritesheet — стандарт: всі кадри анімації в одному PNG на рівних ячейках або упакованих через TexturePacker. TexturePacker упаковує щільніше, ніж Unity Sprite Editor, і підтримує експорт для будь-якого рушія.
Каркасна анімація в Unity: Animator + AnimationClip з keyframes властивості Sprite. Для простих анімацій (4–8 кадрів)—Animator Override Controller дозволяє змінювати анімацію без створення нового AnimatorController.
Скелетна анімація (Spine, DragonBones). Для персонажів з плавною анімацією — скелетна анімація ефективніша за кадрову. Spine 2D (платна, ~$69 essential) або безкоштовний DragonBones. Один спрайт-лист із частинами тіла (руки, ноги, торс, голова) + кості + keyframe-дані = плавна анімація без малювання 30 кадрів бігу. Spine Runtime для Unity — офіційний пакет від Esoteric Software. Важливо: версія Spine Runtime має збігатися з версією Spine Editor, інакше двійкові файли несумісні.
З практики: платформер на Unity, 60 унікальних анімаційних станів персонажа. Художник намалював по 8 кадрів — 480 PNG-файлів. Атлас не вмістився в 2048×2048, потрібні були два атласи. Після переходу на Spine із тими ж спрайт-частинами — 15 атрибутів плюс JSON-дані анімацій, один атлас 1024×512. Анімації стали плавнішими, розмір збірки скоротився на 40 МБ.
Стилі та технічні вимоги за типами
| Тип спрайта | Рекомендована роздільна здатність | Формат | Особливості |
|---|---|---|---|
| Персонаж (кадровий) | 128×128 — 512×512 за кадр | PNG + Atlas | Парна кількість кадрів для Spine |
| Тайли фону | 64×64 — 256×256 | PNG + Atlas | Точне збіганння країв (seamless) |
| UI-елементи | 2× / 3× розділення | PNG + 9-slice | 9-slice для кнопок і рамок |
| Ефекти (VFX) | 64×64 — 256×256 | PNG sequence | Particle System у Unity |
| Іконки предметів | 128×128 або 256×256 | PNG + Atlas | Прозорий фон, однаковий стиль |
Специфіка pixel art
Pixel art вимагає додаткових налаштувань. Filter Mode: Point (no filter) у Unity — інакше пікселі розмиваються. Pixels Per Unit = розмір спрайта в пікселях (спрайт 32px = PPU 32). Compression: None — ASTC руйнує різкість пікселів. Для руху без субпіксельного мерехтіння — Round Sprites to Nearest Pixel у Camera.
Процес створення
Типовий конвеєр: концепт (эскіз стилю) → чорновик (контури) → чистові лінії → заповнення кольором → тені та світло → тест у рушії → технічні правки → фінальний експорт із платформними налаштуваннями.
Тестування в рушії — обов'язковий крок перед фіналізацією. Кольори на моніторі художника та AMOLED-дисплеї можуть різнитися. Темні тені на чорному фоні «проваліються» на некаліброваних екранах.
Що входить у роботу
- Створення спрайтів у узгодженому стилі (за mood board або референсами)
- Анімаційні листи для кадрової анімації або rig-ready частини для Spine/DragonBones
- Підготовка атласів для Unity / Godot / Cocos Creator
- Налаштування Pivot, PPU, компресії текстур
- Тестування в рушії з правками
- Вихідні файли в PSD / Aseprite (для pixel art)
Часова шкала
Залежить від кількості та складності. Один персонаж із базовим набором анімацій (idle, run, jump, attack, death) — 5–10 робочих днів. Повний пакет спрайтів для гіпер-казуальної гри (персонаж + оточення + UI) — 2–6 тижнів. Для великого проекту — обговорюється індивідуально. Вартість розраховується після аналізу вимог.







