Таблица спрайтов, AtlasSprite, спрайт и оптимизация

#optimization #cocos2d-iphone

#оптимизация #cocos2d-iphone

Вопрос:

Я разрабатываю игру Cocos2D для iPhone и читаю об оптимизации. некоторые говорят, что используйте spritesheet, когда это возможно. другие говорят, что используйте atlassprite, когда это возможно, а другие говорят, что sprite подойдет.
Я не понимаю, «когда это возможно», когда каждый из них может и не может быть использован?
Также, какой наилучший вариант для каждого типа?
В моей игре обычно используется 100 спрайтов в сетке, около 5 типов спрайтов и некоторые другие отдельные спрайты. Какая наилучшая настройка для этого? рекомендации по принятию решений для общих случаев также помогут.

Комментарии:

1. Не могли бы вы объяснить «100 спрайтов в сетке»?

Ответ №1:

Вот что вам нужно знать о спрайтовых таблицах и спрайтах в целом.

Таблица спрайтов — это просто набор изображений, собранных в одно большое изображение, а затем будет отдельный файл для данных о местоположении изображения (т. е. изображение 1 начинается с координаты 0,0 размером 100,100, изображение 2 начинается с координаты 100,0 и т.д.).

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

Второе преимущество — оптимизация памяти. Если вы используете прозрачные PNG-файлы для своих изображений, может быть много пустых пикселей — и вы можете удалить их и «упаковать» размеры текстуры намного меньше, чем если бы вы использовали отдельные изображения. Подходит как для проблем с пространством, так и с памятью. (TexturePacker — это инструмент, который я использую для последнего).

Итак, в целом, я бы сказал, что всегда полезно использовать таблицу спрайтов, если только у вас нет непрозрачных спрайтов.