Я создаю приложение, которое использует Cocos2d для создания карты контента (технически большое дерево в смысле теории графов). Каждый узел представлен спрайтом со своей собственной текстурой, а листовые узлы имеют вторую текстуру «нажатой кнопки». Кроме того, некоторые узлы представляют собой анимацию PNG. У меня есть один лист спрайтов, содержащий около 130 текстур узлов, и 3 других листа спрайтов для анимации. В сумме эти 4 файла составляют всего около 18,4 МБ.
Если я запускаю приложение и НЕ запускаю часть cocos2d (т. е. вообще никогда не запускаю фреймворк и, следовательно, никогда не загружаю текстуры), приложение работает примерно на 10 МБ. Когда я загружаю Cocos2d и эти листы спрайтов, объем памяти увеличивается до 90 МБ.
Все мои исследования, кажется, говорят о том, что я делаю все максимально эффективно, но с уже таким высоким использованием памяти я получаю много сбоев, связанных с памятью на iPad 1.
Это нормально для cocos2d? Поскольку сами изображения не такие большие, использует ли он так много памяти из-за количества спрайтов? Есть ли способы уменьшить объем памяти? Я в растерянности и очень сильно под прицелом...