К содержимому
Документация
На этой странице

Изображения и шрифты

Если можно обойтись фигурой, берите фигуру: у неё нет файла, расхода памяти и вопроса о правах. Картинку делайте размером с её место на экране, не больше 2048 для мобильного уровня и 4096 вообще

Размер картинки округляйте вверх до степени двойки

Форматы и размер

Грузится всё, что движок умеет декодировать из байтов файла. На практике это png и jpg

Размер файла игра не ограничивает, ограничивает железо:

УстройствоНаибольшая сторона
Android, гарантированно4096
Android, обычно8192-16384
настольный ПКдо 32768

Память

Реальный предел - память. В памяти картинка хранится как сырые пиксели, сколько бы ни весил файл. png занимает 4 байта на пиксель. jpg - 3, потому что прозрачности у него нет

РазмерПамять (png)
512 на 5121 МБ
1024 на 10244 МБ
2048 на 204816 МБ
4096 на 409664 МБ
8192 на 8192256 МБ
Внимание

Текстура 8192 - это четверть гигабайта на одну картинку. На телефоне это не медленно, это вылет

Что решает игрок

Три пункта в настройках графики у каждого игрока решают, сколько памяти займёт картинка:

  • сжимать ли картинки при загрузке. Сжатие делит числа выше в 4-8 раз
  • наибольшая сторона картинки в памяти. Сторона вдвое меньше - памяти вчетверо меньше
  • строить ли мип-карты, уменьшенные копии для мелкой отрисовки

Телефон по умолчанию сжимает картинки и режет их по 2048. Настольный ПК держит картинку целиком и режет по 4096

Ваша часть - поля у картинки, и прежде всего что на ней изображено. Они стоят рядом с картинкой в списке ресурсов. Фотография лучше всего переживает уменьшение и сжатие. Рисунок с резкими краями - хуже

Пиксель-арт никогда не получает мип-карт, что бы ни предпочло устройство. Ещё он изначально не сжимается и не сглаживается, и это можно поменять полями Сжатие и Сглаживание

Мип-карты

Мип-карты не дают мелкой картинке мерцать. Это уменьшенные копии, которые рисуются вместо полной картинки, пока она мала на экране. Они стоят на треть больше памяти

Без мип-карт уменьшенная картинка не сглаживается, а рябит. Игрок может их выключить, а Пиксель-арт не получает их никогда

Картинка 4096, которая занимает на экране 200 пикселей, стоит в 256 раз больше памяти, чем она же, заранее уменьшенная до 256

Фигура раньше картинки

Фигура дешевле картинки во всём: нет файла, нет памяти, нет вопроса о правах. Встроенные фигуры - настоящая геометрия, а не картинка на прямоугольнике. У них нет прозрачных полей, которые рисуются и выбрасываются

На телефоне это заметно. На среднем мобильном чипе сцена из 1000 объектов тратит 95-97% времени видеокарты на закраску пикселей. Фигура занимает 29.4% своего прямоугольника. Остальное в квадрате с текстурой - прозрачный мусор

Картинка нужна, когда нужно именно изображение: логотип, фотография, нарисованный вручную арт. Для геометрической формы берите фигуру. Нужной нет - нарисуйте её в Редактор фигур

Шрифты

Шрифты грузятся в ttf, otf, ttc. Без своего шрифта текст рисуется тем, что нашлось в системе, а на разных устройствах это разное

Кэш шрифта - набор символов, заранее подготовленных к отрисовке. Его пересобирает генератор по тексту, который есть в уровне. Запускайте генератор, когда текст перестал меняться

Дальше: Бюджет уровня, Мобильные устройства