На платформе Android, как бы отделить рендеринг от логики? Я могу получить базовый класс пользовательских потоков, выполняющий чертеж, но то, что я не получаю, - это место, где можно добавить логическое обновление. Проводя некоторые исследования, я думаю, было бы лучше использовать два разных потока по одному для каждого, рендеринг и логическое обновление. Все, что я могу думать об atm, - это обновить с помощью onDraw в той же теме. Любые указатели на учебные пособия или некоторые идеи по этому вопросу были бы высоко оценены, спасибо.Андроид и логические потоки
3
A
ответ
2
Я разработал одну из самых скачиваемых игр на Android-рынке, но прошло уже 2 года, поэтому это решение может быть устаревшим. Что я сделал: - использовать вид объекта, как вид контента - переопределить метод рисования() класса этого пользователя объекта - в конце метода Жеребьевка(), вызов doLogic()
Обратите внимание, что как вызов рендеринга, так и doLogic() происходят в основном потоке. Это звучит как нет-нет, но он работает для большинства игр (и дает вам автоматическую синхронизацию без необходимости усложнения).
Смежные вопросы
- 1. Отдельные логические приложения потоки и потоки сервлетов в WAR проекта
- 2. Логические логические/истинные таблицы и выходы
- 3. Логические логические и истинные таблицы Пояснение
- 4. Логические и логические операторы с использованием символов
- 5. C# логические потоки, не привязанные к файлам - возможно?
- 6. Операции и потоки Android
- 7. Потоки AVPlayer и AWS Потоки
- 8. Bash: IF и ELSE, сравнения и логические логические ИЛИ?
- 9. Фильтр и логические операторы
- 10. Логические И в Clojure
- 11. Логические операторы и приоритет
- 12. логические и физические компоненты
- 13. FindMinimum и логические ограничения
- 14. PHP и логические операторы?
- 15. JTidy и логические атрибуты
- 16. Циклы и логические операторы
- 17. JSON и логические значения
- 18. Выражения case и логические
- 19. C Битовые Логические Операции Логические
- 20. Как логические и (^, логические соединения) строковые списки - C#
- 21. ASP.NET - рабочие потоки, потоки IO и бесплатные потоки
- 22. потоки и синхронизированные потоки в systemC
- 23. Java-байты-потоки и потоки символы
- 24. Логические схемы и регистры сдвига?
- 25. логические аргументы функции и возвращения
- 26. шестнадцатеричные числа и логические операторы
- 27. микросервисы и логические соединения домена
- 28. код отслеживания и логические ошибки
- 29. PLINQ и логические процессоры конфигурации
- 30. Флажки, логические значения и Spree
Вы хотите, чтобы логика и визуализация происходили одновременно? Это может вызвать проблемы в вашей игре. – prgmast3r
Uhhh, как я понимаю, вы бы обновили свою логику всякий раз, когда это нужно (когда игрок нажимает «вверх», чтобы переместить проигрыватель «вверх»/вперед) и визуализировать обновленную позицию графика/спрайта. Но вызов логики обновления не должен находиться в том же потоке, где выполняется рендеринг. – semajhan
semajhan, игры с физикой в них не просто обновляются на основе пользовательского ввода - они также обновляются по времени, прошедшему. –