Godogen: автономная разработка игр для Godot, Bevy и Babylon.js (Godogen)
Godogen — это инновационный генератор игр, который использует Claude Code и Codex для полностью автономной разработки игр. Вы описываете желаемую игру, а система самостоятельно создаёт исходный код, генерирует 3D-ассеты, запускает выбранный игровой движок и демонстрирует результат в виде запущенной игры или видеозаписи.
Обзор и принцип работы
Godogen представляет собой революционный подход к разработке игр, где ИИ-агенты берут на себя всю тяжёлую работу по созданию игровых проектов. Вместо традиционного цикла разработки, когда программист вручную пишет код, создаёт ассеты и отлаживает игру, система Godogen использует возможности Claude Code от Anthropic или Codex от OpenAI для полной автоматизации этого процесса.
Основной принцип работы прост и элегантен: вы даёте системе текстовое описание игры, которую хотите создать. Агент анализирует описание, разрабатывает архитектуру проекта, генерирует весь необходимый исходный код, создаёт трёхмерные модели и текстуры для ассетов, конфигурирует выбранный игровой движок и, наконец, запускает готовую игру для демонстрации. Результат можно наблюдать в реальном времени в браузере (для Babylon.js) или через локальный проигрыватель, либо получить видеозапись готового результата.
Важной особенностью Godogen является то, что система использует доказательство над заявлениями — агент оценивает результаты не по чистой компиляции проекта, а по фактическому внешнему виду запущенной игры. Если в игре обнаруживаются видимые дефекты, система автоматически определяет проблему и переходит к следующей итерации улучшения.
Как это работает
Основной процесс разработки
Процесс работы Godogen можно разделить на несколько ключевых этапов:
- Инициализация проекта — вы выбираете игровой движок (Godot 4, Bevy или Babylon.js) и ИИ-агента (Claude Code или Codex). Система публикует в свежий репозиторий игры специальную конфигурацию с руководством по движку и утилитами для генерации ассетов.
- Анализ спецификации — агент читает ваше описание игры и устанавливает контекст для развития проекта, опираясь на возможности выбранного движка.
- Генерация архитектуры — система создаёт структуру проекта, включая все необходимые файлы конфигурации, скрипты и сцены.
- Разработка кода — агент пишет весь исходный код на языке, требуемом для выбранного движка (C# для Godot, Rust для Bevy, TypeScript для Babylon.js).
- Генерация ассетов — система использует несколько ИИ-моделей для создания изображений, трёхмерных моделей, текстур и анимированных спрайтов в соответствии с потребностями игры.
- Интеграция и конфигурация — все созданные ассеты и код интегрируются в проект выбранного движка с правильной конфигурацией.
- Запуск и тестирование — агент компилирует проект, запускает игру и оценивает результаты на основе фактического вида работающей игры.
- Итеративное улучшение — если обнаруживаются проблемы, система автоматически выполняет исправления и перезапускает цикл.
Взаимодействие с пользователем
Godogen предлагает гибкий подход к взаимодействию с пользователем. Вы можете выбрать один из двух режимов:
- Режим с живым наблюдением — вы наблюдаете за процессом создания игры в реальном времени (через браузер для Babylon.js или локальный проигрыватель для Godot/Bevy) и можете управлять ходом разработки, принимая решения в критических точках.
- Режим без присмотра — вы запускаете генерацию и система полностью автономно разрабатывает игру, выполняя все необходимые итерации. По завершении вы получаете 15–20 секундное видео с доказательством работающей игры.
Выбор режима определяется тем, как вы сформулируете задачу для системы. Это элегантное решение делает Godogen универсальным инструментом как для интерактивной разработки, так и для автономного создания прототипов.
Основные возможности
Поддерживаемые игровые движки
Godogen поддерживает три популярных современных игровых движка, каждый с уникальным набором возможностей:
- Godot 4 с C#/.NET — полнофункциональная поддержка движка Godot версии 4 с использованием C# и .NET платформы. Система создаёт проекты с поколеньем сцен во время компиляции, основными скриптами в C# и встроенной физикой Jolt для реалистичного симуляции движения и столкновений объектов. Это позволяет создавать как простые 2D игры, так и сложные 3D приложения.
- Bevy (Rust) — интеграция с современным фреймворком Bevy, написанным на Rust. Godogen создаёт проекты, основанные на архитектуре Entity Component System (ECS), что обеспечивает высокую производительность и модульность кода. Система включает поддержку оффскринной съёмки для захвата результатов без визуального интерфейса.
- Babylon.js (TypeScript/Vite) — разработка браузерных игр с использованием современного фреймворка Babylon.js, написанного на TypeScript. Проекты упаковываются с использованием инструмента Vite и развёртываются как живые URL, что позволяет играть в игру сразу же без установки каких-либо инструментов.
ИИ-агенты и языковые модели
Godogen поддерживает две различные архитектуры ИИ-агентов:
- Claude Code от Anthropic — использует мощные языковые модели Claude для анализа требований, разработки архитектуры и написания кода. Claude Code интегрирует инструменты для прямого редактирования файлов и выполнения команд, что делает процесс разработки более эффективным.
- Codex от OpenAI — альтернативный выбор, использующий модели GPT от OpenAI для аналогичных целей. Codex хорошо оптимизирован для работы с кодом и понимает широкий спектр языков программирования.
Генерация ассетов
Система использует несколько специализированных ИИ-сервисов для создания различных типов ассетов:
- Google Gemini — используется для генерации точных изображений с чёткими ссылками на требуемые объекты и персонажи. Gemini особенно хорошо справляется с задачами понимания контекста и создания изображений, которые соответствуют специфическим требованиям игры.
- xAI Grok — используется для генерации текстур, простых объектов и видео с анимированными спрайтами. Grok имеет встроенные механизмы для обнаружения циклических паттернов в видео и удаления фона, что упрощает создание анимированных персонажей и текстур.
- Tripo3D — специализированный сервис для преобразования изображений в трёхмерные модели и создания анимированных биподальных персонажей (человекоподобные персонажи с опорой на две ноги). Это позволяет быстро создавать сложные 3D-ассеты из простых описаний или эскизов.
Доказательство работоспособности
Вместо традиционной метрики успеха (успешная компиляция), Godogen использует инновационный подход «Доказательство над заявлениями». Система оценивает качество созданной игры, исходя из фактического визуального появления и функциональности запущенной игры. Если в работающей игре обнаруживаются видимые дефекты или проблемы функциональности, система автоматически определяет проблему, разрабатывает исправление и повторяет процесс. Это гарантирует, что окончательный результат действительно работает, а не просто компилируется.
Дополнительные особенности
- Полная автоматизация от идеи до готовой игры
- Поддержка как интерактивного разработки, так и полностью автономного режима
- Генерация видеодоказательств работоспособности игры (15–20 секунд)
- Кроссплатформенный выбор движка при публикации
- Поддержка удалённого выполнения на GPU-серверах
- Инструменты управления и контроля для ИИ-агентов (Claude Code и Codex имеют официальные интерфейсы для удалённого контроля)
Архитектура системы
Структура опубликованного репозитория
Godogen использует инновационный подход к структуре проекта. Когда вы публикуете новый репозиторий игры, система создаёт намеренно минимальную структуру, которая содержит только самое необходимое. Остальное воссоздаётся агентом во время выполнения на основе руководства по движку. Это обеспечивает гибкость и упрощает обслуживание.
Опубликованный репозиторий содержит следующие ключевые элементы:
- prompts/runtime.md — манифест времени выполнения, содержащий конфигурацию и метаинформацию о проекте, необходимую агенту для правильного понимания контекста.
- asset-gen/ — директория с кросс-движковыми утилитами для генерации ассетов. Эти инструменты используются агентом для создания всех необходимых игровых ассетов (изображения, модели, текстуры, анимации).
- engines/babylon.md, engines/godot.md, engines/bevy.md — специализированные руководства для каждого поддерживаемого движка. Каждое руководство содержит информацию о структуре проекта, требуемых конфигурациях, способах интеграции ассетов и запуска проекта.
- publish.sh — скрипт для публикации репозитория игры. Этот скрипт берёт шаблон Godogen и адаптирует его для выбранного движка и ИИ-агента, создавая готовый репозиторий, в котором агент сможет работать.
Важно отметить, что выбор движка (Godot, Bevy или Babylon.js) и выбор ИИ-агента (Claude или Codex) — это выборы времени публикации, а не отдельные исходные деревья. Это означает, что исходный код Godogen один и тот же для всех вариантов, просто адаптируемый при публикации.
Работа агента
Когда агент запускается в опубликованном репозитории, он выполняет следующие функции:
- Анализ контекста — изучает руководство по движку и манифест среды выполнения, чтобы понять, какой движок используется, какие возможности доступны и какие ограничения существуют.
- Разработка архитектуры проекта — создаёт полную структуру проекта, включая все необходимые каталоги, конфигурационные файлы и начальные скрипты.
- Написание кода — генерирует весь исходный код на правильном языке (C# для Godot, Rust для Bevy, TypeScript для Babylon.js).
- Запрос и интеграция ассетов — использует утилиты генерации ассетов для создания всех необходимых визуальных элементов и интегрирует их в проект.
- Конфигурация движка — правильно настраивает движок в соответствии с требованиями проекта, включая физику, сцены, ресурсы и другие параметры.
- Компиляция и запуск — компилирует проект (если необходимо) и запускает готовую игру для демонстрации и тестирования.
- Оценка результатов — анализирует внешний вид и функциональность запущенной игры и определяет, требуется ли дальнейшее улучшение.
- Итеративное совершенствование — если обнаруживаются проблемы, разрабатывает исправления и повторяет процесс.
Требования и подготовка
Системные требования
Для работы Godogen необходимо наличие следующего программного обеспечения и конфигурации:
Требования для конкретных движков
- Godot 4 — необходимо установить Godot 4 с поддержкой .NET. Установка должна быть в PATH вашей системы, чтобы агент мог запускать компилятор и движок. Скачайте с официального сайта godotengine.org.
- Rust и Cargo — для проектов Bevy требуется установленный Rust с инструментом управления пакетами Cargo. Установите с помощью
rustupс сайта rustup.rs. - Node.js 22.12+ и npm — для проектов Babylon.js требуется свежая версия Node.js (22.12 или новее) с менеджером пакетов npm. Скачайте с nodejs.org.
Требования для захвата и рендеринга
- Chrome или Chromium — необходим браузер Chrome или совместимый Chromium для захвата игр Babylon.js в браузере. Должна быть включена поддержка аппаратного ускорения WebGL2.
- Vulkan Tools — необходимо установить vulkan-tools для поддержки современного рендеринга. Установите через менеджер пакетов вашей системы.
- xvfb (X Virtual Framebuffer) — для систем без графического дисплея или при удалённом развёртывании. Позволяет создавать виртуальный фреймбуфер для рендеринга.
- FFmpeg — необходим для кодирования видео доказательства работоспособности игры. Установите через менеджер пакетов.
- ImageMagick — используется для обработки изображений и ассетов. Установите через менеджер пакетов.
Основные требования
- Python 3 — система написана на Python, поэтому необходима установка Python 3 с пакетным менеджером pip.
Поддерживаемые операционные системы
Godogen тестировался и поддерживается на следующих платформах:
- Ubuntu Linux
- Debian Linux
- macOS
Хотя система может работать и на других Unix-подобных системах, официальная поддержка распространяется только на указанные платформы.
API ключи и конфигурация
Для работы системы генерации ассетов необходимо получить API ключи от нескольких сервисов и установить их как переменные окружения:
- GOOGLE_API_KEY — ключ API Google для доступа к Google Gemini для генерации изображений. Получите на Google AI Studio. Установите переменную окружения:
export GOOGLE_API_KEY="your-key-here" - XAI_API_KEY — ключ API для доступа к xAI Grok для генерации текстур и видео. Получите на xAI Console. Установите переменную окружения:
export XAI_API_KEY="your-key-here" - TRIPO3D_API_KEY — ключ API для доступа к Tripo3D для генерации 3D-моделей и анимированных персонажей. Получите на Tripo3D Platform. Установите переменную окружения:
export TRIPO3D_API_KEY="your-key-here"
Подробная подготовка системы
В репозитории Godogen содержится файл setup.md, который содержит полный список системных пакетов, которые необходимо установить в зависимости от вашей операционной системы и выбранного движка. Рекомендуется перед началом работы ознакомиться с этим файлом и установить все необходимые зависимости.
Установка и публикация
Клонирование репозитория
Сначала клонируйте репозиторий Godogen на вашу локальную машину:
git clone https://github.com/godogen/godogen.git
cd godogen
Проверка требований
Убедитесь, что у вас установлены все необходимые зависимости, упомянутые в разделе требований выше. Проверьте наличие ключевых инструментов:
# Проверка Python
python3 --version
# Проверка наличия движков (если планируете их использовать)
godot --version # для Godot
cargo --version # для Bevy
node --version # для Babylon.js
# Проверка остальных инструментов
ffmpeg -version
convert --version # ImageMagick
Публикация репозитория игры
Использование скрипта publish.sh для создания нового репозитория игры с выбранным движком и ИИ-агентом:
Публикация для Godot 4 с Claude Code
./publish.sh --engine godot --agent claude --out ~/my-game
Эта команда создаст новый репозиторий игры в директории ~/my-game, настроенный для работы с движком Godot 4 и ИИ-агентом Claude Code. В репозитории будут созданы файлы конфигурации CLAUDE.md и директория .claude/skills/ с необходимыми утилитами.
Публикация для Babylon.js с Codex
./publish.sh --engine babylon --agent codex --out ~/my-game
Эта команда создаст репозиторий, настроенный для разработки браузерной игры на Babylon.js с использованием Codex. Будут созданы файлы AGENTS.md и директория .agents/skills/.
Публикация для Bevy с Claude Code
./publish.sh --engine bevy --agent claude --out ~/my-game
Эта команда создаст репозиторий для Bevy с Claude Code.
Перезаписи существующих репозиториев
Если вы хотите переиспользовать директорию, которая уже существует, передайте флаг --force, чтобы очистить содержимое перед переопубликованием:
./publish.sh --engine godot --agent claude --out ~/my-game --force
Используйте этот флаг с осторожностью, так как все содержимое директории будет удалено перед переопубликованием.
Структура опубликованного репозитория
После публикации ваш репозиторий игры будет содержать следующую структуру:
- prompts/runtime.md — манифест конфигурации проекта
- engines/{engine}.md — руководство для выбранного движка (godot.md, babylon.md или bevy.md)
- asset-gen/ — утилиты для генерации ассетов
- .claude/skills/ или .agents/skills/ — директория с навыками для выбранного ИИ-агента
- CLAUDE.md или AGENTS.md — конфигурационный файл для агента
Опубликованный репозиторий готов к использованию с выбранным ИИ-агентом. Вы можете передать этот репозиторий Claude Code или Codex, и агент начнёт работу над созданием игры.
Использование
Запуск агента
После публикации репозитория игры, вы передаёте этот репозиторий вашему выбранному ИИ-агенту (Claude Code или Codex) вместе с описанием игры, которую вы хотите создать.
Для Claude Code
Откройте Claude Code через веб-интерфейс Anthropic и выполните следующие шаги:
- Загрузите опубликованный репозиторий в рабочее пространство Claude Code
- Предоставьте описание желаемой игры (например: «Создай простую 2D платформер с прыгающим персонажем, платформами и врагами»)
- Claude Code автоматически начнёт анализировать репозиторий, читать руководство по движку и генерировать необходимый код
- Система будет запускать игру и проверять результаты, автоматически исправляя ошибки если они обнаружены
- В конце вы получите готовую, работающую игру
Для Codex
Процесс аналогичен, но использует интерфейс Codex от OpenAI. Шаги выполнения идентичны.
Формулирование описания игры
Качество создаваемой игры во многом зависит от того, насколько полным и ясным является ваше описание. Вот рекомендации для хорошего описания:
- Жанр — ясно укажите жанр игры (платформер, шутер, пазл, приключение и т.д.)
- Механика — опишите основные игровые механики и как игрок взаимодействует с игрой
- Цель — укажите, что должен достичь игрок для завершения уровня или игры
- Визуальный стиль — опишите желаемый визуальный стиль (минималистичный, реалистичный, мультяшный и т.д.)
- Сложность — укажите предполагаемую сложность разработки (простая 2D-игра, сложная 3D-игра и т.д.)
- Ассеты — если у вас есть специфические пожелания относительно персонажей, предметов или окружения, упомяните их
Например, хорошее описание может выглядеть так: «Создай 2D платформер в стиле ретро-игр 90-х годов. Главный персонаж — прыгающий робот-квадрат. Уровень состоит из 5 платформ разной высоты с врагами (летающие дроны), которые нужно избежать или разрушить. Игрок может прыгать, двигаться влево/вправо и собирать кристаллы для получения очков. Цель уровня — достичь выхода в верхнем правом углу, собрав все кристаллы. Используй яркие цвета и пиксельную графику.»
Интерактивная разработка
Если вы выбрали интерактивный режим, вы сможете наблюдать за процессом разработки в реальном времени и принимать решения:
- Смотрите, как работает созданная игра
- Если вам что-то не нравится, вы можете остановить процесс и указать агенту на необходимые изменения
- Агент учитывает ваше обратную связь и продолжает разработку с учётом ваших пожеланий
- Вы можете попросить добавить новые функции, изменить визуальный стиль, отрегулировать сложность и т.д.
Автономная разработка
Если вы выбрали полностью автономный режим:
- Система начнёт разработку игры без вашего вмешательства
- Агент будет самостоятельно решать все задачи и проблемы, возникающие в процессе разработки
- Процесс может занять несколько часов в зависимости от сложности игры
- После завершения вы получите готовый репозиторий с полным исходным кодом и видеодоказательством работающей игры
Проверка результатов
Когда разработка завершена, вы можете проверить результаты несколькими способами:
- Для Babylon.js — система развёртывает игру как живой URL в интернете, который можно открыть в браузере и сразу же играть
- Для Godot — вы можете открыть проект в редакторе Godot и запустить его, или распространить как готовое приложение
- Для Bevy — вы можете скомпилировать проект с помощью cargo build --release и запустить готовый бинарный файл
- Видеодоказательство — система автоматически создаёт видеозапись 15–20 секунд, демонстрирующую работающую игру
Возможности по движкам
Godot 4 с C#/.NET
Godot 4 является одним из самых мощных и гибких выборов для разработки игр с Godogen. Система создаёт полнофункциональные проекты на C# с использованием платформы .NET.
Особенности реализации в Godot
- Поколение сцен во время компиляции — сцены игры генерируются автоматически во время компиляции проекта, что обеспечивает быструю загрузку и оптимизацию памяти
- C# скрипты — весь логический код написан на C# с полной поддержкой объектно-ориентированного программирования и современных особенностей языка
- Физика Jolt — интеграция с физическим движком Jolt для реалистичной симуляции гравитации, столкновений и других физических явлений
- 2D и 3D поддержка — система может создавать как простые 2D-игры, так и сложные 3D-приложения с полной поддержкой всех возможностей Godot 4
- Кроссплатформенность — проекты Godot автоматически компилируются для Windows, macOS, Linux, и других платформ
- Asset Pipeline — встроенная поддержка для импорта и управления ассетами (моделями, текстурами, звуками и т.д.)
Типичный рабочий процесс в Godot
- Агент создаёт структуру проекта Godot с конфигурацией project.godot
- Генерируются необходимые сцены (.tscn файлы) с иерархией объектов
- Пишутся C# скрипты для логики игры, управления персонажами, врагами и взаимодействиями
- Ассеты (модели, текстуры) импортируются и конфигурируются в редакторе
- Компилируется C# код в .NET
- Запускается Godot с проектом для тестирования и демонстрации
Bevy (Rust)
Bevy представляет собой современный и высокопроизводительный фреймворк для разработки игр на Rust, который идеален для создания сложных и оптимизированных игр.
Особенности реализации в Bevy
- Entity Component System (ECS) — использует архитектуру ECS, которая обеспечивает высокую модульность и производительность кода
- Rust язык — весь код написан на Rust, что гарантирует безопасность памяти и отсутствие целого класса ошибок
- Оффскринная съёмка — встроенная поддержка для захвата игры без визуального интерфейса, что удобно для автоматического тестирования и создания видеодоказательств
- Высокая производительность — Bevy оптимизирован для производительности и может обрабатывать большое количество игровых объектов одновременно
- Кроссплатформенность — проекты Bevy могут компилироваться для Windows, macOS, Linux и веб-платформ (через WebGL)
- Модульная архитектура — возможность легко расширять функциональность с помощью плагинов и компонентов
Типичный рабочий процесс в Bevy
- Агент создаёт структуру Cargo проекта с необходимыми зависимостями
- Определяются компоненты ECS (Component) для представления сущностей (персонажей, врагов, предметов)
- Разрабатываются системы (System) для обработки логики игры, взаимодействий и обновления состояния
- Создаётся стартовая сцена (Startup System) для инициализации игровых объектов
- Ассеты загружаются и конфигурируются через Asset Loader
- Проект компилируется с помощью cargo build
- Запускается скомпилированное приложение для демонстрации
Babylon.js (TypeScript/Vite)
Babylon.js позволяет создавать браузерные игры, которые работают прямо в веб-браузере без необходимости установки каких-либо приложений. Это идеальный выбор для быстрого прототипирования и распространения игр через интернет.
Особенности реализации в Babylon.js
- TypeScript язык — весь код написан на TypeScript для типизации и безопасности кода
- Vite сборщик — использует современный инструмент Vite для быстрой сборки и hot reload во время разработки
- Веб-развёртывание — игра развёртывается как веб-приложение и доступна по живому URL в интернете
- Браузерная игра — не требует установки приложений, работает в любом веб-браузере с поддержкой WebGL
- Быстрая загрузка — оптимизированная сборка Vite обеспечивает быструю загрузку и отзывчивость игры
- Cross-browser совместимость — игра работает на всех современных браузерах (Chrome, Firefox, Safari и т.д.)
- Онлайн многопользовательская поддержка — возможность интеграции сетевых возможностей для многопользовательских игр
Типичный рабочий процесс в Babylon.js
- Агент создаёт структуру проекта TypeScript/Vite с необходимыми зависимостями
- Разрабатывается код на TypeScript, создающий Babylon Scene
- Добавляются камеры, источники света, материалы и сетки для визуализации
- Пишется логика игры в виде классов и функций TypeScript
- Ассеты (модели, текстуры, звуки) загружаются в сцену
- Проект собирается с помощью npm run build (использует Vite)
- Приложение развёртывается на веб-сервер и доступно по URL
- Игра может быть запущена в браузере с использованием Chromium для захвата видео
Генерация ассетов
Система генерации ассетов
Одной из ключевых особенностей Godogen является автоматическая генерация игровых ассетов с использованием различных ИИ-сервисов. Система умно распределяет задачи между несколькими специализированными моделями для получения оптимальных результатов.
Google Gemini для изображений
Google Gemini используется для генерации детальных и точных изображений персонажей и объектов. Особенно хорошо Gemini справляется с задачами, требующими понимания контекста и создания изображений, соответствующих конкретным требованиям.
Применение Gemini
- Генерация портретов и персонажей с точными деталями
- Создание изображений конкретных объектов (оружие, инструменты, мебель)
- Генерация сложных сцен и окружений
- Создание изображений с точным стилем и эстетикой, указанной в описании
Пример использования
Если агент создаёт RPG-игру с героем, он может запросить у Gemini: «Создай изображение фэнтезийного воина в кожаной броне с длинным мечом, в стиле компьютерной графики 2000-х годов, портретная ориентация, разрешение 512x512.» Gemini создаст детальное изображение, которое затем будет использовано в качестве спрайта героя.
xAI Grok для текстур и видео
xAI Grok специализируется на генерации текстур, простых 3D-объектов и видео. Особенно полезен для создания анимированных спрайтов и текстур благодаря встроенным возможностям обнаружения циклических паттернов и удаления фона.
Применение Grok
- Генерация текстур для 3D-моделей (камень, дерево, металл, ткань и т.д.)
- Создание простых 3D-объектов для игры
- Генерация видео с анимированными действиями (прыжки, ходьба, атаки)
- Автоматическое обнаружение циклических паттернов в видео для создания бесшовных анимаций
- Удаление фона из видео для получения чистых анимированных спрайтов
Пример использования
Для создания анимированного спрайта бегущего персонажа, Godogen может запросить у Grok видео персонажа, выполняющего действие бега. Grok создаст видео, система обнаружит циклический паттерн в беговой анимации, удалит фон и разделит видео на отдельные кадры для создания спрайт-листа.
Tripo3D для 3D-моделей
Tripo3D специализируется на преобразовании 2D-изображений в 3D-модели и создании риггированных биподальных персонажей (персонажи на двух ногах с костями для анимации).
Применение Tripo3D
- Преобразование 2D-изображений в 3D-модели для использования в Godot или Babylon.js
- Создание риггированных персонажей для анимации (ходьба, прыжки, атаки)
- Генерация 3D-моделей врагов и NPC персонажей
- Создание 3D-моделей предметов и окружения
Пример использования
Если игра требует 3D-персонажа, Godogen может сначала запросить изображение персонажа у Gemini, а затем использовать Tripo3D для преобразования этого изображения в полноценную 3D-модель с надлежащим риггингом костей, готовую к анимации в игровом движке.
Кроссплатформенная архитектура генерации
Система генерации ассетов разработана так, чтобы быть полностью независимой от выбранного игрового движка. Ассеты, созданные одним из ИИ-сервисов, могут быть использованы во всех поддерживаемых движках (Godot, Bevy, Babylon.js). Это обеспечивается с помощью стандартных форматов файлов:
- Изображения — PNG, JPG форматы для спрайтов и текстур
- 3D-модели — gLTF/glb форматы для кроссплатформенной совместимости
- Видео — MP4 формат для видео-ассетов
- Аудио — WAV/MP3 форматы для звуков и музыки
Управление ассетами
Директория asset-gen/ содержит утилиты для управления и кэширования ассетов, автоматического выбора наиболее подходящего ИИ-сервиса для каждого типа ассета и организации созданных файлов в структуре проекта. Система отслеживает уже созданные ассеты, чтобы избежать дублирования и ненужных повторных запросов к ИИ-сервисам.
Удалённое развёртывание
Зачем использовать удалённое развёртывание
Полный цикл разработки игры с Godogen может занять несколько часов, особенно для сложных проектов с множеством ассетов. Кроме того, рендеринг игры и захват видео требуют значительных вычислительных ресурсов, особенно для 3D-проектов. Удалённое развёртывание на GPU-сервере решает эту проблему:
- Сервер может работать 24/7 без необходимости оставлять ваш компьютер включённым
- GPU-сервер обеспечивает значительно более быстрый рендеринг по сравнению с процессорной обработкой
- Вы можете инициировать разработку игры и проверить результаты позже со своего устройства
- Возможность управления разработкой с нескольких устройств одновременно
Подготовка сервера
Для запуска Godogen на сервере:
- Выберите GPU-сервер — рекомендуется использовать облачные провайдеры, такие как AWS, Google Cloud, Azure или Paperspace, которые предлагают GPU-экземпляры с поддержкой CUDA и Vulkan.
- Установите требуемое ПО — следуйте инструкциям в разделе требований для установки всех необходимых зависимостей.
- Установите SSH доступ — убедитесь, что у вас есть SSH доступ к серверу для управления процессом разработки.
- Клонируйте Godogen репозиторий — скачайте исходный код Godogen на сервер.
- Опубликуйте репозиторий игры — используйте скрипт publish.sh для создания репозитория игры на сервере.
Поддержание сессии через SSH
Поскольку разработка может занять несколько часов, важно гарантировать, что процесс не прервётся при разъединении SSH-соединения. Используйте инструменты для управления сессиями:
Использование tmux
# Создание новой сессии tmux
tmux new-session -d -s godogen-build
# Присоединение к существующей сессии
tmux attach-session -t godogen-build
# Отсоединение от сессии (сессия продолжит работать)
# Нажмите Ctrl+B, затем D
Использование screen
# Создание новой сессии screen
screen -d -m -S godogen-build
# Присоединение к существующей сессии
screen -r godogen-build
# Отсоединение от сессии
# Нажмите Ctrl+A, затем D
Удалённый контроль разработки
Как Claude Code, так и Codex имеют официальные интерфейсы для удалённого управления. Это позволяет вам:
- Проверять статус разработки в реальном времени с любого устройства
- Давать указания агенту для корректировки направления разработки
- Просматривать промежуточные результаты запущенной игры
- Остановить процесс разработки, если необходимо
- Загружать видеодоказательства завершённых проектов
Обратитесь к официальной документации Claude Code и Codex для получения подробной информации об использовании удалённого управления.
Оптимизация производительности на сервере
Для максимизации скорости разработки на сервере:
- Используйте GPU-ускорение — убедитесь, что сервер имеет NVIDIA GPU с поддержкой CUDA для ускорения рендеринга.
- Оптимизируйте размер ассетов — генерируйте ассеты разумного размера (не слишком большие) для ускорения их создания и обработки.
- Используйте кэширование — система автоматически кэширует уже созданные ассеты, что сокращает время повторных запусков.
- Выбирайте подходящий размер сервера — для простых 2D-игр может быть достаточно серверов среднего размера, а для сложных 3D-приложений потребуется высокопроизводительный GPU-сервер.
Часто задаваемые вопросы
Какой игровой движок выбрать для своего проекта?
Выбор движка зависит от типа игры и ваших предпочтений:
- Godot 4 — лучший выбор для классических 2D и 3D игр, если вы хотите полный контроль над проектом и возможность распространения как настольного приложения. Хорошо подходит для платформеров, шутеров, RPG.
- Bevy — идеален, если вам нужна максимальная производительность и вы готовы работать с Rust. Лучше всего подходит для высоконагруженных проектов и прототипирования сложных систем.
- Babylon.js — лучший выбор, если вы хотите быстро опубликовать игру в веб-браузере без установки приложений. Идеален для быстрого прототипирования и демонстрации идей.
Какого качества будут созданные ассеты?
Качество ассетов зависит от нескольких факторов:
- Качество описания в запросе — более детальное описание приводит к лучшим результатам
- Возможности используемого ИИ-сервиса — Google Gemini, xAI Grok и Tripo3D имеют разные сильные стороны
- Автоматическое улучшение — система может запросить переделку ассета, если первый результат не удовлетворителен
- Стиль — система лучше работает с четко определёнными стилями (минималистичный, мультяшный, реалистичный)
В целом, можно ожидать получить игровые ассеты приличного качества, пригодные для использования в инди-играх и прототипах.
Сколько времени займёт разработка игры?
Время разработки варьируется в зависимости от сложности игры и выбранного движка:
- Простая 2D-игра (платформер, пазл) — 30 минут до 1 часа
- Средняя 3D-игра (с несколькими персонажами и уровнями) — 1-3 часа
- Сложная игра (с множеством ассетов, сложной логикой) — 3-5 часов и более
Время также зависит от скорости интернет-соединения (для загрузки ассетов) и производительности сервера (если используется удалённое развёртывание).
Могу ли я использовать собственные ассеты вместо сгенерированных?
Да, вы можете использовать собственные ассеты. После публикации репозитория игры, вы можете:
- Вручную добавить свои изображения, модели, звуки в соответствующие директории проекта
- Модифицировать сгенерированные ассеты в программах для редактирования изображений или 3D-моделей
- Инструктировать агента во время разработки использовать конкретные ассеты, если у вас уже есть нужные файлы
Система достаточно гибкая и позволяет комбинировать автоматически сгенерированные и ручно созданные ассеты.
Какие API ключи абсолютно необходимы для работы?
Для запуска Godogen необходимы как минимум ключи для одного из сервисов генерации ассетов:
- GOOGLE_API_KEY (Google Gemini) — необходим для генерации большинства изображений
- XAI_API_KEY (xAI Grok) — необходим для генерации текстур и видео
- TRIPO3D_API_KEY (Tripo3D) — необходим для создания 3D-моделей
Хотя технически система может работать и без ключей (используя только кодовую генерацию), генерация ассетов значительно улучшает качество конечного результата, поэтому рекомендуется получить как минимум GOOGLE_API_KEY.
Могу ли я распространять игры, созданные с Godogen?
Да, вы полностью владеете созданными игроми и можете распространять их под любой лицензией на ваше усмотрение. Godogen сам использует лицензию MIT, которая позволяет коммерческое использование.
- Для Godot-игр — вы получаете полный исходный код, который можете модифицировать, компилировать и распространять
- Для Bevy-игр — аналогично, полный контроль над кодом и правом распространения
- Для Babylon.js-игр — вы можете развернуть на собственном сервере или использовать любой хостинг
Единственное требование — соблюдать лицензии использованных библиотек и зависимостей (Godot, Bevy, Babylon.js и т.д.), которые обычно тоже имеют открытые лицензии.
Полезные ссылки
Официальные ресурсы Godogen
- GitHub репозиторий Godogen — основной репозиторий проекта с исходным кодом
- CHANGELOG.md — история обновлений и новых версий
- Примеры промптов — примеры описаний игр для Godogen
- Руководство установки — подробные инструкции по подготовке системы
- Twitter автора (@alex_erm) — следите за обновлениями проекта
Документация игровых движков
- Документация Godot Engine — официальная документация Godot 4
- Bevy Cheat Book — практическое руководство по Bevy
- Документация Babylon.js — полная документация Babylon.js
Сервисы генерации ассетов
- Google AI Studio (Gemini) — получите API ключ для Google Gemini
- xAI Console (Grok) — получите API ключ для xAI Grok
- Tripo3D Platform — получите API ключ для Tripo3D
ИИ-агенты и языковые модели
- Claude AI — веб-интерфейс Claude Code
- OpenAI Codex — информация о Codex
- OpenAI Help Center — поддержка OpenAI
Облачные провайдеры для удалённого развёртывания
- AWS EC2 — облачные вычисления Amazon
- Google Cloud Compute Engine — облачные вычисления Google
- Microsoft Azure Virtual Machines — облачные вычисления Microsoft
- Paperspace — облачная платформа с GPU
Инструменты управления сессиями
- tmux Wiki — документация по tmux
- GNU Screen — альтернатива tmux
