Я работаю над написанием довольно простого приложения. Он использует минимальный сенсорный ввод и в основном просто воспроизводит модные анимации. Анимации не так много, но то, как это делается в настоящее время, кажется сверхэффективным и использует слишком много памяти.
Вид разделен на две части, нижняя 1/5 - это только одно изображение, которое никогда не меняется. В остальном именно там воспроизводится анимация. В настоящее время это делается путем загрузки 32 изображений в массив и последующего воспроизведения через них (8 кадров в секунду). Это делает это в общей сложности 4 раза, проходя каждую анимацию. Картинки не большие, но все же довольно большие. Мне также было интересно, какой формат файла лучше всего их хранить, как с точки зрения общего размера, так и требуемых накладных расходов.
Это очень простой подход, и он работает, но, похоже, он просто не режет, а использует слишком много.
Мое предложение состояло в том, чтобы разделить анимацию на несколько слоев, потому что есть несколько вещей, которые, я думаю, можно сделать по-другому:
- Сделайте фон одним статичным изображением, чтобы он не был частью анимации
- Уберите несколько «дудов», таких как движущиеся графики и индикатор выполнения, и сделайте их своими частично прозрачными слоями поверх анимации или под ней. Это также открыло бы дверь, насколько творческая свобода идет в будущем для меня.
- Вырежьте текст сверху и используйте iPhone для программного отображения текста. Лучше использовать iPhone, чтобы нарисовать текст или загрузить изображение с текстом в нем? Будучи в первую очередь веб-разработчиком, я считаю глупым загружать любые изображения с текстом в них.
- Воспроизведите то, что осталось после того, как эти вещи вырезаны в виде анимации, которая будет значительно меньше.
Итак, в общем, мы рассматриваем 1 статический фон, 3-5 маленьких анимаций и одну большую. Могу ли я использовать слои, чтобы разделить эти элементы, и больше полагаться на iPhone, чтобы нарисовать окончательное изображение? Вот где я думал, что мог бы сделать это немного лучше, кажется глупым объединять все в одну большую картинку, которую вы пролистываете, как книжка, когда вместо этого вы можете загрузить несколько более мелких элементов, которые используются в приложении, и делать вещи немного более эффективно.
Или я полностью усложняю это, и есть ли лучший способ сделать это?
Edit: я просматривал, и кажется, что использование слоев будет более эффективным. У меня тоже есть другой вопрос. Лучше ли иметь каждый кадр анимации в виде отдельного файла и загружать в массив для анимации, либо иметь одно изображение гигантского листа спрайта со всеми кадрами, и iPhone должен захватывать каждый кадр из листа спрайта с помощью координат программно?
Редактировать 2: С тех пор мы все уладили, проверьте это в магазине приложений.