Я создаю игру с очень простой графикой. Это все формы холста, и вся игра в одной нити. Я хочу достичь 60 FPS и выше (возможно, 90/120). Я знаю, что для этого требуется 16 миллисекунд или меньше на кадр.
Вот временные разбивки игры:
Общее количество кадров в кадре составляет около 18-20 миллисекунд. Это означает, что у меня около 57 FPS. Кроме того, это означает, что Logi c, рисование Canvas и unlockAndPostCanvas () могут находиться в одном потоке, а lockCanvas () - в другом. Это позволило бы каждому кадру длиться 13 мс, потому что lockCanvas () - самая медленная часть.
Кто-нибудь знает способ поместить lockCanvas () в отдельный поток или, что еще лучше, полностью исключить эти две медленные функции