Моя игра заикалась из-за GC, и она колеблется от 40 мс до 140 мс.
Моя игра не создает новые объекты или что-либо в обновлениях или потоках рендеринга, поэтому я уверен, что мой проект чистый, КРОМЕ для одного.
В методе обновления у меня есть List<TouchEvents> touchEvents = getTouchEvents();
Я почти уверен, что именно это заставляет GC срабатывать, поскольку он только GC каждый раз, когда я двигаюсь вокруг, поскольку требует, чтобы я касался экрана (используя событие ACTION_MOVE).
Как бы я оптимизировал или предотвратил это?
EDIT:
Теперь я начинаю думать, что это связано с моим методом ограничения FPS.
Я предполагаю, что, поскольку я ограничиваю FPS до 30, GC не хватает времени, не вмешиваясь в мою игру.
Я выдвинул эту теорию после того, как снял лимитер и запустил свою игру на полной скорости 60FPS.
Игра идет идеально гладко, когда работает на 60FPS, но не на 30FPS.
Есть идеи?