Спрайты и совместное использование UIImage между UIImageViews - PullRequest
1 голос
/ 27 марта 2012

Я рассматриваю вопрос об использовании спрайтов для игры с большими изображениями.

Я пытаюсь определить, выделяется ли какая-либо дополнительная память при совместном использовании одного UIImage между видами изображений.Я запустил тест, создав 40 видов изображений, один раз с одним изображением и один раз, создав 40 экземпляров изображений, и они, по-видимому, используют один и тот же объем памяти.

Если для просмотра изображений выделяется дополнительная память с использованием одногоизображение, какая польза от использования спрайтов?

1 Ответ

2 голосов
/ 27 марта 2012

Мне кажется, я только что ответил на свой вопрос. Похоже, что распределение памяти для обоих тестов одинаково, потому что я использовал imageNamed: для загрузки изображений. И, как отмечено здесь: Разгон изображения UIImageНаименован: FUD

Что касается общего поведения кэша, он выполняет кеширование на основе имени файла (поэтому два экземпляра + imageNamed: с одним и тем же именем должны приводить к ссылкам на одни и те же кэшированные данные)

Я перезапустил тест с использованием imageWithContentsOfFile: и обнаружил, что при совместном использовании того же UIImage дополнительная память не выделялась.

...