Я реализую игровой цикл с постоянным FPS. Думаю 25-30 фпс должно хватить. Есть идеи из собственного опыта? Стоит ли вообще ограничивать FPS?
Android-игра с постоянным FPS?
Ответы (4)
30-40 кадров в секунду обычно хороши для динамичной игры. В зависимости от игры и того, насколько она тяжелая, платформа может не всегда успевать за ней. Поэтому лучше предположить, что игра не может точно отслеживать частоту кадров. Вместо этого используйте таймер, который проверяет системные часы в каждом кадре и подсчитывает, сколько времени прошло. Таким образом, вы можете правильно рассчитать приращение, например, к физике (падение объекта), даже если игра работает с более низким fps.
Хорошее начало для игрового цикла: http://wiki.igda.org/Programming_and_Technology/Game_Programming_Patterns_for_Beginners/Game_Loop< /а>
Здесь есть еще одна трактовка темы:
http://dewitters.koonsolo.com/gameloop.html
Я заметил, что другие ответы касаются того, что игровой цикл должен быть реализован в том смысле, что вы всегда должны отображать свою графику/обновления относительно смещения времени в миллисекундах, а не «кадров», что верно.
Я нашел эту страницу, пытаясь узнать, есть ли рекомендации по идеальной частоте кадров Adnroid, но после поиска в Google я не нашел никаких фактов об оптимальном использовании FPS. Нельзя сказать, что не существует каких-то «магических» чисел, идеально подходящих для определенных чипсетов Android или чего-то в этом роде. Просто если и есть, то, я полагаю, это недостаточно важный момент, чтобы быть широко известным.
Тем не менее, я поделюсь своими мыслями об идеальной частоте кадров Android после того, как не найду жестких и быстрых ответов, для всех, кто интересуется тем же, что и я:
Идеальная частота кадров должна быть как можно меньше без ущерба для пользовательского опыта. Причина в том, что чем больше кадров рендерится в секунду, тем больше используется циклов ЦП, тем больше расходуется батарея. В некоторых играх (например, в шахматах) происходит не так много событий, как, например, в динамичной игре «бесконечный раннер».
Начинать с небольшого числа и увеличивать частоту кадров до тех пор, пока пользователь не почувствует себя хорошо, вероятно, это хороший показатель. Это то, что нужно настроить прямо в конце разработки приложения перед выпуском.