Частота смены кадров Apple SpriteKit - PullRequest
0 голосов
/ 22 мая 2018

В настоящее время я создаю приложение для оценки, которое генерирует лабиринт с использованием рекурсивного отслеживания.Это лабиринт сетки 25x25, где каждая стена представляет собой отдельный SKSpriteNode (я читал, что использование SKShapeNodes неэффективно).

Однако в сцене около 1300 узлов, что вызывает некоторые проблемы с частотой кадров,даже на моем iPhone X. В настоящее время он работает на холостом ходу со скоростью около 15-30 кадров в секунду, что на самом деле не идеально.

Есть ли какие-либо идеи о том, как кэшировать узлы SKSpriteNode для повышения производительности?Я, вероятно, упускаю из виду многие вещи и не создаю стены наиболее эффективным способом, но рамки кажутся слишком низкими, чтобы быть правильными?

Если кто-нибудь сможет предложить или подтолкнуть меня в правильном месте, которое быбыть огромной помощью.

1 Ответ

0 голосов
/ 22 мая 2018

Я настоятельно рекомендую использовать SKTexture с для повторяющихся идентичных изображений.См. Создание текстурированного узла спрайтов .

Для оптимальной производительности создайте спрайты до времени компиляции и поместите их в атлас текстур в вашем каталоге ресурсов.Для создания текстурных атласов см. Документацию для SKTextureAtlas.

...