Я сделал очень простую гиперказуальную игру, все работает отлично, но после нескольких минут игры fps падает с 60 до 50, даже если телефон нагревается. Похоже на этот вопрос. Я попробовал профилирование, но просто ничего не вижу. Попытался даже удалить некоторые элементы интерфейса, но все равно не повезло. Перепробовал различные настройки vsync. Кроме того, я использовал это для отображения fps. Даже без этого видно отставание. Даже если я просто открою игру и ничего не сделаю, через 5 минут fps станет равным 50. Если вернуться назад с помощью кнопки «Домой» и снова войти в игру, то fps снова станет равным 60. Используя единство 2018.2.6f1. Никогда не сталкивался с таким поведением в других моих играх для Android.
По сути, это был неисправный пользовательский вершинный шейдер, который был применен к плоскости для изменения цвета фона, который со временем менял цвет. Я не использовал цвет мобильной вершины, потому что не получал желаемый результат. Но теперь я остановлюсь на мобильном.