# Оптимизация Вызовов Отрисовки Draw Calls и Батчинг GPU в 2D Движках
Объединение отдельных изображений кадров в единый атлас текстур уменьшает количество команд отрисовки draw calls отправляемых процессором на видеокарту.# Сравнение Отдельных Файлов и Упакованных Атласов Текстур
Отдельные Файлы Кадров
Отдельно сохраненные файлы PNG или WebP
- Генерирует отдельный вызов отрисовки для каждого кадра на экране
- Вызывает частые переключения контекста на видеокарте GPU
- Увеличивает количество HTTP запросов в браузерных играх
- Падение производительности на мобильных устройствах
Упакованный Атлас Текстур
Единое PNG изображение с JSON метаданными
- Объединяет сотни спрайтов в один вызов отрисовки GPU
- Максимизирует пропускную способность видеопамяти
- Уменьшает количество сетевых запросов
- Обеспечивает плавные 60 FPS на любых платформах
# Математика Экструзии Краев и Субпиксельное Движение
Применение экструзии краев от 1 до 2 пикселей дублирует крайние пиксели кадров наружу исключая появление видимых швов при движении камеры.Стратегия Экструзии Краев
Используйте экструзию краев для полного устранения артефактов на границах спрайтов при движении камеры.# Рекомендуемые Размеры Текстур для Различных Платформ
| Целевая Платформа | Рекомендуемый Макс Размер | Требование Степени 2 | Профиль Памяти |
|---|---|---|---|
| Мобильные Браузеры | 2048 x 2048 px | Обязательно для WebGL 1.0 | Низкая Пропускная Способность |
| ПК / Консоли | 4096 x 4096 px | Рекомендуется | Высокая Емкость GPU |
| Ретро Портативные Консоли | 1024 x 1024 px | Строгое Требование | Строгие Лимиты VRAM |
- Гарантирует 100% совместимость со старыми драйверами и WebGL 1.0
- Поддерживает автоматическую генерацию мипмапов
- Оптимизирует распределение видеопамяти VRAM на GPU
- Может оставлять неиспользуемое прозрачное пространство при малом числе спрайтов
- Требует точной настройки отступов при нестандартных размерах
- Незначительно увеличивает начальную площадь текстуры
# Ключевые Термины Упаковки Спрайтов
- Draw Call
- Команда от процессора видеокарте на отрисовку геометрии и текстур.
- Bin Packing
- Алгоритм оптимальной упаковки прямоугольников разного размера в минимальную область.
- Border Extrusion
- Дублирование крайних пикселей наружу для предотвращения визуальных швов при движении.
- Flipbook Animation
- Быстрое последовательное воспроизведение кадров для имитации движения в 2D играх.