Я использую рамки Starling и Flash Builder.Старлинг перемещается вокруг огромного изображения
У меня есть большое изображение карты (около 5500x4500 пикселей), где игрок летает. Он не повторяется, а не основан на основе плитки, а основан на векторе.
Я перемещаю камеру вокруг следующего игрока на каждом событии enterFrame, камера отображает приблизительно 800x400 часть карты на кадр. Камеру movemet моделируют, изменяя координаты X и Y для родительских карт DisplayObject. Каков наилучший способ сделать это и иметь стабильные 60 кадров в секунду?
То, что я сейчас (attemp с максимальной FPS на мобильный телефон):
- 9 Старлинг изображений с максимальным размером текстуры: 2048x2048 (или меньше по краям). Я получаю 53-60 FPS, но мне нужна стабильность, я чувствую, что уже нахожусь в области рендеринга.
То, что я пытался (дает меньше FPS):
рисование спрайты для каждого отдельного объекта карты (гораздо больше, чем 9, но меньшего размер)
Использования CullingSprite (не оказывающие itel, когда не видно)
Отличное представление о наличии только 4 экранов! Это нормально для быстрого рендеринга, что размер экрана не 2^n? – user1561713
Так что в основном я все еще перемещаю контейнер DisplayObject, который содержит все 4 BG, но не дальше screen.width, высота экрана, и когда я попадаю в сторону этого контейнера BG, я просто прыгаю и меняю изображения Movieclip, я получил ваш совет правильно? – user1561713
Размер экрана не должен быть 2^n. Единственное реальное преимущество было бы иметь ваши образцы 2^n, но это может привести к тому, что образцы будут намного больше, потому что, даже если вам нужно всего пару пикселей, 2^n удвоит его! – Iggy