В настоящее время я разрабатываю мобильную 2D-игру и хочу, чтобы камера могла перемещаться, увеличивать и уменьшать масштаб. Одним из методов может быть рендеринг всего уровня в буферный буфер, и просто нарисовать область и масштабировать ее вверх / вниз до экрана устройства. Angry birds дает эффект, который я ищу, когда пользователь может уменьшить масштаб и увидеть весь уровень.
Это заняло бы огромное количество памяти, чтобы иметь поверхность для всего уровня. Другим способом было бы уменьшить каждый спрайт и нарисовать его на виде, но это может потребовать больше мощности рендеринга, чем изменение размера всей поверхности.
Другой вариант аналогичен первому, где у меня могла бы быть большая фиксированная поверхность для рендеринга изображений вместо наличия поверхности для всего уровня. Опять же, это заняло бы огромные объемы памяти, особенно если бы пользователь действительно хотел уменьшить масштаб.
Я никогда прежде не разрабатывал для мобильных устройств. Будет ли масштабирование каждого отдельного изображения слишком дорогим? Должен ли я масштабировать каждый спрайт, а затем рендерить или рендерить большую часть карты на поверхность и уменьшать / уменьшать масштаб этой поверхности?