Живой документ: приоритеты могут меняться по обратной связи и ресурсам.
Текущее состояние (2026): версия 3.3.x, мультиплеер (TCP relay, контекст, EventBus, курс), мобильная поддержка (Kivy), веб-сборка (pygbag), редактор сцен (Sprite Editor), физика (pymunk), базовые системы (спрайты, UI, анимации, частицы, сохранения, ввод, отладка).
Цель — вынести игры за пределы десктопа: веб и/или мобильные устройства.
| Критерий | Веб (браузер) | Мобильные (Android / iOS) |
|---|---|---|
| Инструмент | Pygbag — Pygame в браузер через WebAssembly | python-for-android + Buildozer (Android); iOS сложнее |
| Сложность | Проще: один пайплайн, main.py + async-цикл, без магазинов |
Сложнее: рецепты под pygame-ce, SDK, архитектуры, магазины |
| Дистрибуция | Ссылка, хостинг (GitHub Pages, itch.io и т.д.) | Google Play / App Store, подписи, правила |
| Охват | ПК + планшеты + телефоны (через мобильный браузер) | Только целевая ОС |
Рекомендация: начать с веб-поддержки (Pygbag): меньше порог входа, одна кодовая база, игры сразу «по ссылке». Мобильные нативно — следующий шаг при необходимости (или сначала охватывать мобильных через веб).
Цель: игры на SpritePro можно собирать и запускать в браузере.
-
Интеграция с Pygbag
- Документация: как собрать проект SpritePro под Pygbag (структура
main.py, ассеты). - Ограничения: async main loop (
await asyncio.sleep(0)), форматы аудио (OGG и т.д.). - Проверка демо/примеров на запуск в браузере.
- Документация: как собрать проект SpritePro под Pygbag (структура
-
Совместимость API
- Выявить вызовы, несовместимые с Pygbag/WebAssembly (файловая система, потоки и т.д.).
- При необходимости — обёртки или рекомендации в документации.
-
Документация и шаблон
- Раздел в docs: «Запуск в браузере» (Pygbag, ограничения, деплой).
- Минимальный шаблон проекта «SpritePro + Pygbag» для быстрого старта.
Ориентир: v1.4 — «поддержка сборки под веб (Pygbag)».
Цель: запуск на телефонах и планшетах — нативно (Android в приоритете) или через веб.
- Игры, собранные через Pygbag, открываются на мобильных в браузере.
- Дополнительно: адаптивный UI, сенсорный ввод (документация + при необходимости хелперы в SpritePro).
- Android: python-for-android + Buildozer; возможны кастомные рецепты под pygame-ce и зависимости SpritePro.
- iOS: отдельная большая тема (лицензии, тулчейн).
- Задачи: сенсорное управление, разрешения экрана, производительность, упаковка ресурсов.
Ориентир: сначала веб + «мобильный браузер»; нативный Android — после стабилизации веба, при наличии запроса.
- Улучшение мультиплеера: предсказание, базовая компенсация лагов, валидация на сервере (по необходимости).
- Документация и обучение: интерактивные примеры, туториалы, обновление курса под новые платформы.
- Производительность: батчинг, атласы, профилирование — по мере появления узких мест.
- Дополнительные системы (по желанию): инвентарь, диалоги, квесты — как отдельные инициативы, не блокирующие платформы.
- 3D, VR/AR — вне текущего фокуса.
- Визуальный редактор, магазин плагинов — при появлении запроса от сообщества.
- Онлайн-сервисы (лидерборды, облачные сохранения) — поверх текущего мультиплеера, отдельная тема.
- Идеи и приоритеты: GitHub Issues с меткой
feature-requestилиroadmap. - Веб/мобильные: опыт с Pygbag или p4a/Buildozer — особенно ценен, можно описать в Discussion или Issue.
- Документация и примеры: Pull Request с правками в docs или новым примером под веб/мобильные.
Легенда: ✅ сделано | 🔄 в работе | 📋 запланировано | ⏸️ отложено