|
6 / 5 / 2
Регистрация: 14.10.2014
Сообщений: 79
|
|
PyGame тормозит при "недозагрузке"15.01.2021, 20:47. Показов 3916. Ответов 12
Метки нет (Все метки)
Дело происходит на Raspberry Pi 3B. Имеется скрипт на питоне, использующий пигейм и активную работу с графикой, в т.ч. полноэкранные картинки 1920х1080. Все отлично работает, когда используется полная версия Raspbian с десктопом, запуск скрипта производится из командной строки терминала, например - python3 ta.py
Теперь пришло время сделать скрипт автозапускаемым, прописываю запуск в /еtc/rc.local После ребута, и первичного запуска десктопа (появляется фоновая картинка, системная строка, в общем гуи загрузился), скрипт как хотелось, запускается. НО!... С жуткими тормозами вывода на экран поверхностей в пигейме. Полноэкранная картинка буквально секунду прорисовывается сверху вниз. Все остальные алгоритмы софта работают штатно, тормозит только графика. Не особо желая в проекте иметь полноценный десктоп за ненадобностью, ставлю оську в варианте лайт - без тесктопа, только командная строка. Садомазо с наполнением пустой системы всем необходимым, опускаю. В ходе которых кстати, установилась пигейм 2.0.1., которая начала вываливать ошибки при загрузке файла, типа это не штатный виндоуз BMP-файл. Снес установленный пигейм и увидел, что в системе остался 1.9.4, который и был в полноценном первом варианте. Запускаю скрипт - и вижу те же самые тормоза!!!! Первая версия следствия, что использовав лайтовую оську, либо использовав автозапуск через /еtc/rc.local , запуск скрипта производится в момент, когда в полной версии что то еще не загрузилось в системе, влияющее на работу графике, а в лайтовой системе отсутствовало вообще. Прошу совета, где искать корень проблемы. Еще попробую сделать отложенный запуск скрипта, через несколько секунд, когда система полностью загрузится (для полной версии с десктопом), но хочется таки понять в чем тут дело. Заранее спасибо!
0
|
|
| 15.01.2021, 20:47 | |
|
Ответы с готовыми решениями:
12
При импорте pygame пишет что нет модуля pygame.base Ошибка в pygame AttributeError: 'pygame.Rect' object has no attribute 'blit' Pygame ошибка module ‘pygame’ has no ‘init’ member |
|
1472 / 827 / 140
Регистрация: 12.10.2013
Сообщений: 5,456
|
|
| 16.01.2021, 14:34 | |
|
Когда смотрел про искусственный интеллект code bullet ai drive car
он сказал что pygame нет двойной буферизации отсюда обязаны быть лаги и ему пришлось переписывать код мелкой игры с pygame на pyglet. https://youtu.be/r428O_CMcpI?t=555 Добавлено через 2 минуты не двойной буфер а какой-то вертикальной синхронизации =).
0
|
|
|
6 / 5 / 2
Регистрация: 14.10.2014
Сообщений: 79
|
||||||||||||
| 16.01.2021, 17:22 [ТС] | ||||||||||||
|
И еще, пробую использовать крон, чтобы попробовать еще вариант автозапуска. И что то пока тоже рогами в землю. Сделал скрипт start.sh:
Тоже ничего, но появилось сообщение что мне письмо. Читаю, оно от крона - там распечатка вывода работы моей проги и сообщение об ошибке в момент, когда пигейм пытался создать свой экран - "screen=pygame.display.set_mode(.... ..Текст ошибки: pygame.error: Unable to open a console termonal Таким образом, если я запускаю прогу из командной строки, то все норм, хотя тормозит. А если прога запускается из крона при ребуте, то пигейм выдает ошибку что не может создать экран. Перезапускаюсь на оське полной, с десктопом, лезу в папку где крон запостил письмо - и оно тоже есть и с тем же содержанием. Т.е. полная оська с десктопом при запуске проги через крон, тоже инициировала ошибку пигейма. С этим то что делать не подскажете? Как то запускать прогу через крон, но нужен какойто консольный терминал???? В общем пока только нарастают вопросы.
0
|
||||||||||||
|
67 / 64 / 3
Регистрация: 02.11.2019
Сообщений: 227
|
|
| 16.01.2021, 18:51 | |
|
У вас raspberry pi 4? По моему опыту - RPi это гиблое дело. На него даже Ubuntu с треском ставится. Проблема, я думаю, вызвана тем, что графический интерфейс не загружается при загрузке без "рабочего стола". Поэтому PyGame не может создать окно, этим и вызваны тормоза.
На будущее: raspberry pi - это просто ужасный эквивалент компьютера. Максимум пользы от RPi (по крайней мере для меня) - это небольшой файловый сервер, через который дома удобно перекидывать файл с компьютера на компьютер, но ничего более. В рекламе RPi освещают как замену десктопу - но и десктоп может быть медленным, глупым, сложным и невыносимым. Добавлено через 3 минуты И ещё, если не секрет: для чего вам автозапуск PyGame? Это вроде-как библиотека для игр, которая заточена для динамичной графики, а не для каких-либо полезных утилит, для них есть PyQt.
0
|
|
|
6 / 5 / 2
Регистрация: 14.10.2014
Сообщений: 79
|
||||
| 16.01.2021, 19:37 [ТС] | ||||
|
geargoose, У меня pi 3B.
Вот припоминаю, что при просмотре лога после фейлового запуска при ребуте по крону, в логах после события крона было еще два экрана всякой системной всячины. Думаю внимательно это прочитать, может удастся понять, что после этого еще загружалось, без чего пигейм не заработал. Также попробую сделать запуск по крону не по ребуту, а по времени, выбрав момент через пару минут после загрузки, т.е. когда все уже прогрузится. Так что завтра еще покурю этот вопрос...
0
|
||||
|
67 / 64 / 3
Регистрация: 02.11.2019
Сообщений: 227
|
||
| 16.01.2021, 19:49 | ||
sudo reboot? А при выключении и последующем включении всё ок? ОС, я так понимаю, Raspbian.Вы пробовали запускать скрипт через файл autostart?
0
|
||
|
6 / 5 / 2
Регистрация: 14.10.2014
Сообщений: 79
|
|||
| 16.01.2021, 20:05 [ТС] | |||
0
|
|||
|
6 / 5 / 2
Регистрация: 14.10.2014
Сообщений: 79
|
|
| 17.01.2021, 15:05 [ТС] | |
Сообщение было отмечено DmFat как решение
Решение
Итак, хэппи-энд...
Во первых, на полной оське попробовал сделать запуск по крону по времени, после полной загрузки системы. Хрен, крон отрабатывает, прога не работает - пигейм не может создать экран. Делаю проще. Вместо своей проги также по крону делаю запуск LXTerminal, и он тоже не запускается, в логах пишет, терминал не может создать дисплей. В общем, делаю ламерский вывод - по крону скрипты запускаются гдето "внизу", под графикой и т.п., и все эти блага цивилизации для запускаемых скриптов недоступны. Т.е. крон в данной задаче - фтопку! Далее пробую видимо то, с чего и надо было начать - /etc/xdg/lxsession/LXDE-pi/autostart Прописываю туда запуск моего скрипта - и аллилуйяяяя!!!!!! Прога запустилась и не тормозит, работает как надо. Проверил, весь функционал при данном запуске работает - порты GPIO, последовательный порт, http-запросы по сети и т.п., все работает штатно ! Дабы минимизировать проявления малины при старте системы, убрал стартовые лого, вывод стартовых сообщений, фон десктопа, который появляется на несколько секунд заменил логотипом проекта и скрыл меню-бар. Результат пока что полностью удовлетворяет. На пустой оське указанная директория отсутствует, т.к. видимо относится к десктопу, которого в ней нет. Ну и хрен с ней. Буду работать с полной версией оськи, которую затюнил как сказано выше. Всем бобра и спасибо за внимание! P.S. А прога на пигейме на голой оське все таки работает с тормозами, ну и хрен с ней... По ка что...
0
|
|
|
67 / 64 / 3
Регистрация: 02.11.2019
Сообщений: 227
|
|
| 17.01.2021, 15:42 | |
|
Очень рад, что проблема решена.
0
|
|
|
1472 / 827 / 140
Регистрация: 12.10.2013
Сообщений: 5,456
|
||
| 17.01.2021, 15:58 | ||
|
Сравнить лаги два варианта кода пугейм и пуглет.
0
|
||
|
963 / 718 / 276
Регистрация: 10.12.2016
Сообщений: 1,763
|
||
| 17.01.2021, 18:32 | ||
|
0
|
||
|
67 / 64 / 3
Регистрация: 02.11.2019
Сообщений: 227
|
||
| 17.01.2021, 18:37 | ||
|
0
|
||
|
963 / 718 / 276
Регистрация: 10.12.2016
Сообщений: 1,763
|
|
| 17.01.2021, 18:43 | |
|
0
|
|
| 17.01.2021, 18:43 | |
|
Помогаю со студенческими работами здесь
13
Pygame тормозит на Raspbery Pi 3 Ошибка при установке пакета Pygame Застой при создании игры на Pygame Чёрный экран при запуске программы с pygame Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
|
WordPad для Windows 11
Jel 10.01.2026
WordPad для Windows 11
— это приложение, которое восстанавливает классический текстовый редактор WordPad в операционной системе Windows 11. После того как Microsoft исключила WordPad из. . .
|
Classic Notepad for Windows 11
Jel 10.01.2026
Old Classic Notepad for Windows 11
Приложение для Windows 11, позволяющее пользователям вернуть классическую версию текстового редактора «Блокнот» из Windows 10. Программа предоставляет более. . .
|
Почему дизайн решает?
Neotwalker 09.01.2026
В современном мире, где конкуренция за внимание потребителя достигла пика, дизайн становится мощным инструментом для успеха бренда. Это не просто красивый внешний вид продукта или сайта — это. . .
|
|
Модель микоризы: классовый агентный подход 3
anaschu 06.01.2026
aa0a7f55b50dd51c5ec569d2d10c54f6/
O1rJuneU_ls
https:/ / vkvideo. ru/ video-115721503_456239114
|
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR
ФедосеевПавел 06.01.2026
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR
ВВЕДЕНИЕ
Введу сокращения:
аналоговый ПИД — ПИД регулятор с управляющим выходом в виде числа в диапазоне от 0% до. . .
|
Модель микоризы: классовый агентный подход 2
anaschu 06.01.2026
репозиторий https:/ / github. com/ shumilovas/ fungi
ветка по-частям.
коммит Create переделка под биомассу. txt
вход sc, но sm считается внутри мицелия. кстати, обьем тоже должен там считаться. . . .
|
Расчёт токов в цепи постоянного тока
igorrr37 05.01.2026
/ *
Дана цепь постоянного тока с сопротивлениями и источниками (напряжения, ЭДС и тока). Найти токи и напряжения во
всех элементах. Программа составляет систему уравнений по 1 и 2 законам Кирхгофа и. . .
|