GBA Background Studio — это настольное приложение для создания и редактирования фонов Game Boy Advance (GBA). Оно позволяет конвертировать изображения в совместимые с GBA тайлсеты и тайлмапы, визуально редактировать тайлы и палитры, а также экспортировать готовые к использованию ресурсы для ваших GBA-проектов.
⚠️ Это приложение предназначено для разработчиков, ROM-хакеров и пиксель-артистов, которым необходим точный контроль над фонами GBA.
Этот README доступен на следующих языках:
English | Español | Português (BR) | Français | Deutsch | Italiano | Português | Nederlands | Polski
Türkçe | Tiếng Việt | Bahasa Indonesia | हिन्दी | Русский | 日本語 | 简体中文 | 繁體中文 | 한국어
-
Конвертация изображений в GBA
- Конвертирует стандартные изображения в совместимые с GBA тайлсеты и тайлмапы.
- Настройка размера вывода и глубины цвета (4bpp и 8bpp).
- Предпросмотр результата перед экспортом.
-
Редактор тайлов
- Визуальный выбор и редактирование тайлов.
- Интерактивные инструменты рисования на сетке тайлмапа.
- Уровни масштабирования от 100% до 800% для редактирования пиксель за пикселем.
-
Редактор палитр
- Редактирование до 256 цветов на палитру.
- Синхронизация изменений палитры с предпросмотром и тайлами.
- Изменение порядка, замена или настройка отдельных цветов.
-
Вкладка предпросмотра
- Визуализация финального фона на экране, похожем на GBA.
- Быстрая проверка конфигураций тайлов и палитр.
-
История Отменить/Повторить
- Полное отслеживание истории редактирования.
- Операции отмены и повтора с большим буфером истории.
-
Настраиваемый интерфейс и строка состояния
- Подробная строка состояния с выбором тайла, координатами тайлмапа, ID палитры, состоянием отражения и уровнем масштабирования.
- Контекстная панель инструментов для каждой вкладки (предпросмотр, тайлы, палитры).
-
Многоязычная поддержка
- Внутренняя система перевода (Translator) с выбором языка через настройки.
- Разработан для поддержки нескольких языков в интерфейсе.
GBA Background Studio построен на Python и PySide6 / PySide2 (гибридный) и следует модульному дизайну интерфейса:
-
Главное окно (
GBABackgroundStudio)- Управляет состоянием приложения (текущий BPP, уровень масштабирования, выбор тайла и палитры).
- Содержит основные вкладки и пользовательскую строку состояния.
- Загружает и применяет конфигурацию (включая последнюю сессию вывода).
-
Вкладки
PreviewTab– Предпросмотр фона в стиле GBA.EditTilesTab– Инструменты редактирования тайлов и тайлмапа.EditPalettesTab– Редактор палитр и инструменты манипуляции цветами.
-
Компоненты и утилиты интерфейса
MenuBar– Файловые операции (открыть изображение, экспортировать файлы, выход) и действия редактора.CustomGraphicsView– РасширенныйQGraphicsViewс тайл-ориентированным взаимодействием.TilemapUtils– Общая логика взаимодействия и выбора тайлмапа.HistoryManager– Управление отменой/повтором для операций редактора.HoverManager,GridManager– Визуальные помощники для эффектов наведения и наложений сетки.Translator,ConfigManager– Локализация и постоянная конфигурация.
Загрузите последнюю версию с GitHub Releases:
| Установщик | Python | ОС |
|---|---|---|
GBABackgroundStudio_Setup.exe |
Встроен (установка не требуется) | Windows 10 / 11 |
GBABackgroundStudio_Legacy_Setup.exe |
Встроен (установка не требуется) | Windows 7 / 8 / 8.1 |
Просто запустите установщик и откройте приложение — Python и pip не нужны.
| Среда | Python | Qt-бэкенд | ОС |
|---|---|---|---|
| Современная | 3.10+ | PySide6 (авто) | Windows 10/11, macOS 11+, Linux |
| Legacy | 3.8 / 3.9 | PySide2 5.15.2 (авто) | Windows 7 / 8 / 8.1 |
Приложение автоматически определяет, какой Qt-бэкенд использовать, исходя из вашей версии Python — ручная настройка не требуется.
pip install -r requirements.txtrequirements.txt автоматически устанавливает правильный Qt-бэкенд:
- Python ≥ 3.10 →
PySide6 - Python 3.8 / 3.9 →
PySide2 5.15.2
Прочие зависимости: Pillow, numpy, scipy, scikit-learn, opencv-python, certifi.
Полный графический интерфейс работает на Windows 7 и выше. Используйте Python 3.8, и requirements.txt автоматически установит PySide2 5.15.2.
Кроме того, Многоязычный мастер командной строки (GBA_Studio_Wizard.bat) доступен для пакетных конвертаций без графического интерфейса и работает на любой версии Windows с Python 3.8+:
- Перейдите в корневую директорию проекта.
- Запустите
GBA_Studio_Wizard.bat. - Выберите ваш язык (поддерживается 18 языков).
- Следуйте пошаговым инструкциям для конвертации вашего изображения.
-
Клонировать репозиторий
git clone https://github.com/CompuMaxx/gba-background-studio.git cd gba-background-studio -
Создать и активировать виртуальное окружение (необязательно, но рекомендуется)
python -m venv .venv source .venv/bin/activate # В Windows: .venv\Scripts\activate
-
Установить зависимости
pip install -r requirements.txt
-
Запустить приложение
python main.py
-
Открыть изображение
- Перейдите в Файл → Открыть изображение или нажмите
Ctrl+O. - Выберите изображение, которое хотите преобразовать в фон GBA.
- Перейдите в Файл → Открыть изображение или нажмите
-
Настроить конвертацию
- Выберите Режим фона (Текстовый режим или Вращение/Масштаб).
- Выберите палитру(ы) или Тайлмап для использования (только для Текстового режима 4bpp).
- Установите цвет, который будет использоваться как прозрачный.
- Настройте размер вывода и другие необходимые параметры.
- Нажмите Конвертировать, и приложение сделает остальное.
-
Редактор тайлов
- Переключитесь на вкладку Редактор тайлов.
- Используйте вид тайлмапа для рисования и изменения отдельных тайлов.
- Выбирайте целые области для копирования, вырезания, вставки или поворота групп тайлов.
- Синхронизируйте изменения в реальном времени для мгновенных результатов.
- Настройте уровень масштабирования для идеальной точности.
- Оптимизировать/Деоптимизировать тайлы для экономии места или обеспечения совместимости с оборудованием.
- Конвертировать ресурсы между форматами 4bpp и 8bpp.
- Плавно переключаться между Текстовым режимом и Вращением/Масштабом.
-
Редактор палитр
- Перейдите на вкладку Редактор палитр.
- Изменяйте цвета в сетке палитр и настраивайте их с помощью редактора цветов.
- Выбирайте конкретные области или все тайлы, принадлежащие палитре, для замены или обмена с другой.
-
Предпросмотр фона
- Переключитесь на вкладку Предпросмотр для точного представления того, как это будет выглядеть на реальном GBA.
- Убедитесь, что конфигурации тайлов и палитр работают вместе идеально.
-
Экспорт ресурсов
- Перейдите в Файл → Экспортировать файлы или нажмите
Ctrl+E. - Экспортируйте тайлсеты, тайлмапы и палитры в форматах, готовых для интеграции в вашу цепочку инструментов разработки GBA.
- При необходимости экспортируйте отдельные ресурсы из соответствующих меню.
- Перейдите в Файл → Экспортировать файлы или нажмите
Приложение отслеживает ваши действия редактирования с помощью менеджера истории:
- Отменить – отменяет последнюю операцию.
- Повторить – повторно применяет отменённую операцию.
Система истории поддерживает буфер последних состояний, включая редактирование тайлов, изменения палитр и операции с тайлмапом.
Приложение использует менеджер конфигурации для хранения настроек, таких как:
- Последний использованный язык
- Последний использованный уровень масштабирования
- Загружать ли последний вывод при запуске
- Другие настройки интерфейса и редактора
Конфигурация загружается при запуске и применяется к интерфейсу и меню.
Компонент Translator управляет текстами интерфейса:
- Язык по умолчанию настраивается через настройки.
- Файлы перевода можно добавлять или редактировать для поддержки большего количества языков.
- Тексты интерфейса (меню, диалоги, метки) проходят через переводчик.
Вклад приветствуется! Если вы хотите помочь:
- Сделайте форк этого репозитория.
- Создайте ветку функции:
git checkout -b feature/moya-novaya-funkciya
- Зафиксируйте изменения:
git commit -am "Добавить мою новую функцию" - Отправьте ветку:
git push origin feature/moya-novaya-funkciya
- Откройте Pull Request с описанием ваших изменений.
Пожалуйста, поддерживайте код в соответствии с существующим стилем и включайте тесты, когда это возможно.
Этот проект лицензирован под GNU General Public License v3.0 (GPL-3.0).
Подробности см. в файле LICENSE.
- Спасибо сообществам GBA homebrew и ROM-хакинга за их документацию и инструменты.
- Вдохновлён классическими редакторами пиксель-арта и утилитами разработки GBA.
Если вы находите этот инструмент полезным и хотите поддержать его разработку, рассмотрите возможность угостить меня кофе!




