Правильный способ создания 2D-игры для Android - PullRequest
1 голос
/ 14 апреля 2011

Получив помощь по запуску Android-понга, я понял, что нарисовал себя в углу.

Для справки по коду (его долго) и советам, вот ссылка на последнюю ветку Обновление счета игрока в игре на андроид

В основном частота кадров уменьшается вдвое, когда я касаюсь экрана. Я думаю, что это связано с обновлением всего или рисованием на холсте. Это также приводит к плохой связи между частями приложения (представление, фрейм и создание). Есть ли рекомендуемый способ создать игру для Android 2d? Это основано на лунной игре на посадку, и это выглядело хорошо, но когда я попытался воссоздать ее, это выглядело намного хуже. Я не мог найти много ресурсов о лучшей практике для рисования, и пока это кажется немного обескураживающим.

Итак, вкратце

Как бы вы изменили код, размещенный в ссылке, для повышения производительности? Или я нарисовал себя в плохо сделанном углу, и пришло время начать новый? Если да, то как?

Спасибо

1 Ответ

0 голосов
/ 15 апреля 2011

Вам не нужен invalidate () в onTouch, потому что вы уже запускаете покадровую анимацию дополнительным потоком.

Попробуйте определить все фиксированные значения / переменные в конструкторе SurfaceView или в onSizeChanged (), где вы знаете размер загруженного холста и растровых изображений, чтобы не создавать ненужных переменных, запросов или вычислений в onDraw, onTouch или другие методы для обработки игровой логики, иначе она замедлится.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...