Промпт, который заставит модель писать игры
В январе 2026 года сообщество разработчиков устроило странный эксперимент: кто создаст самый рабочий промпт для генерации 3D игры в стиле Zelda на Three.js? Правила простые - один промпт, один HTML файл, никаких дополнительных запросов. И знаете что? Это сработало.
GLM 4.7 Flash, выпущенный в конце 2025 года, оказался достаточно умным, чтобы понимать сложные архитектурные требования. Но ключ - в правильном промпте. Не просто "сделай игру", а конкретная инструкция с техническими ограничениями.
Важно: Three.js r134 (актуальная версия на 28.01.2026) изменила API для работы с физикой. Старые промпты с Three.js r128 просто не работают.
Почему именно Zelda и Three.js?
Zelda - идеальный тестовый полигон. Нужно: движение персонажа, камера от третьего лица, сбор предметов, простой инвентарь, враги с ИИ. Three.js r134 дает все инструменты, но собрать их воедино - задача для промпта.
Конкурс показал интересную вещь: модели лучше справляются с конкретными техническими требованиями, чем с абстрактными "сделай крутую игру". Чем детальнее промпт, тем работоспособнее результат.
Промпт-победитель конкурса
Вот тот самый промпт, который занял первое место. Он работает с GLM 4.7 Flash, но проверен и на Claude 3.7 Sonnet. Ключевое - структура требований:
Создай полностью рабочую 3D игру в стиле Zelda на Three.js r134 в одном HTML файле.
ТЕХНИЧЕСКИЕ ТРЕБОВАНИЯ:
1. Используй Three.js r134 (последняя стабильная версия на 28.01.2026)
2. Весь код в одном HTML файле, без внешних зависимостей кроме CDN Three.js
3. Подключи Three.js через CDN: https://cdn.jsdelivr.net/npm/three@0.134.0/build/three.min.js
4. Для физики используй Cannon.js через CDN: https://cdn.jsdelivr.net/npm/cannon-es@0.20.0/dist/cannon-es.min.js
5. Для контроллеров используй Pointer Lock API
ИГРОВЫЕ МЕХАНИКИ:
1. Персонаж с камерой от третьего лица
2. WASD для движения, пробел для прыжка
3. Процедурная генерация ландшафта (холмы, деревья, камни)
4. Собираемые предметы (рубины, появляются случайно)
5. Простые враги с патрулированием
6. Система здоровья (3 сердца)
7. Базовый инвентарь (отображает собранные рубины)
8. Музыка и звуковые эффекты через Web Audio API
ВИЗУАЛЬНЫЕ ТРЕБОВАНИЯ:
1. Стилизованная графика (low-poly, яркие цвета)
2. Day/night цикл (автоматическая смена освещения)
3. Частицы для эффектов сбора предметов
4. Простые анимации для персонажа и врагов
КОДИРОВАНИЕ:
1. Используй ES6 модули внутри script тега
2. Оптимизируй производительность (frustum culling, LOD для дальних объектов)
3. Добавь обработку ошибок и fallback для старых браузеров
4. Комментируй сложные части кода
Выведи полный HTML код игры. Не объясняй, просто покажи код.
Что не работает в промптах (и как это исправить)
После анализа 50+ промптов с конкурса выявились типичные ошибки:
- Слишком много креатива: "Сделай уникальную механику времени" - модель теряется. Лучше: "Добавь day/night цикл с изменением освещения каждые 2 минуты"
- Не указаны версии: Three.js r134 и r128 - разные миры. Всегда указывай точную версию
- Забывают про физику: Без Cannon.js или аналогичной библиотеки персонаж проваливается сквозь пол
- Требуют слишком много: Нейросеть 2026 года еще не создает AAA-игры одним промптом. Реалистичные ожидания - ключ к успеху
Локальные модели против облачных: кто лучше?
Интересный факт с конкурса: локальные модели (особенно GLM 4.7 Flash в 8B параметров) часто справлялись лучше облачных. Почему?
| Модель | Успешность промпта | Среднее время ответа | Работоспособность кода |
|---|---|---|---|
| GLM 4.7 Flash (8B) | 78% | 12 секунд | Высокая |
| Claude 3.7 Sonnet | 82% | 25 секунд | Очень высокая |
| GPT-4.5 Turbo | 75% | 18 секунд | Средняя |
| DeepSeek Coder V3 | 85% | 15 секунд | Высокая |
Локальные модели меньше "фантазируют" и строже следуют инструкциям. GLM 4.7 Flash, обученный на большом количестве игрового кода, понимает специфику Three.js лучше других.
Процедурная генерация в промптах: как не сломать игру
Самая сложная часть - заставить модель генерировать работающую процедурную генерацию. Типичная ошибка: модель создает бесконечный цикл или ландшафт с дырами.
Рабочее решение из промпта-победителя:
// Процедурная генерация ландшафта
function generateTerrain() {
const terrain = new THREE.Group();
const geometry = new THREE.PlaneGeometry(100, 100, 50, 50);
// Простой шум для холмов
const vertices = geometry.attributes.position.array;
for (let i = 0; i < vertices.length; i += 3) {
const x = vertices[i];
const z = vertices[i + 2];
vertices[i + 1] = Math.sin(x * 0.1) * Math.cos(z * 0.1) * 3;
}
geometry.computeVertexNormals();
const material = new THREE.MeshStandardMaterial({ color: 0x7cfc00 });
const mesh = new THREE.Mesh(geometry, material);
mesh.rotation.x = -Math.PI / 2;
mesh.receiveShadow = true;
terrain.add(mesh);
return terrain;
}
Ключевое слово здесь - "простой". Модели лучше справляются с базовой математикой (синусы, косинусы), чем со сложными алгоритмами шума Перлина.
One-shot против итеративного подхода
Конкурс был именно про one-shot генерацию. Но в реальной разработке работает итеративный подход, как в статье про декомпиляцию с Claude.
Разница в результатах поразительная:
- One-shot: Рабочий прототип за 30 секунд, но с багами и ограниченной функциональностью
- Итеративный (5-7 промптов): Почти полная игра, но требует времени и понимания, что исправлять
Что дальше? Промпты для сложных игровых систем
Если one-shot генерация простой Zelda работает, что насчет более сложных систем? Эксперименты показывают интересные результаты:
- Диалоговые системы: GLM 4.7 Flash неплохо генерирует ветвящиеся диалоги, но путается в состояниях
- Квестовые системы: Требуют четкого описания состояний квеста (активен, выполнен, провален)
- Инвентарь с крафтом: Работает, если явно описать рецепты крафта в промпте
- Сохранение игры: LocalStorage - легко, облачные сохранения - сложно
Интересный кейс - Infinite Kitchen, где несколько моделей создают бесконечный контент. Для one-shot промптов это пока слишком сложно, но для итеративной разработки - реально.
Практический совет: как тестировать промпты
Не доверяйте первому результату. Вот рабочий процесс из конкурса:
1 Создай базовый промпт с минимальными требованиями
Начни с движения персонажа и отображения мира. Если это не работает, все остальное бессмысленно.
2 Проверь в браузере сразу
Не читай код, не анализируй. Просто скопируй в HTML файл и открой в браузере. Работает движение? Отлично. Нет? Переформулируй промпт.
3 Добавляй механику по одной
Сначала сбор предметов. Потом враги. Потом инвентарь. Не пытайся получить все сразу.
4 Используй шаблоны из работающих промптов
Если нашел рабочий промпт для физики - копируй эту часть. Не изобретай велосипед.
Будущее one-shot генерации игр
К концу 2026 года ожидаются модели, способные генерировать полноценные игры одним промптом. Но уже сейчас можно создавать прототипы за минуты.
Что изменится:
- Мультимодальность: Модели смогут генерировать не только код, но и текстуры, как в статье про 3D-мебель
- Понимание геймдизайна: Модели научатся балансировать сложность и веселье
- Интеграция с игровыми движками: Прямая генерация для Unity или Unreal Engine
Пока что one-shot генерация - это инструмент для быстрых прототипов и обучения. Но через год-два, возможно, мы будем говорить о полноценных играх, созданных одним промптом.
Не пытайтесь создать следующую AAA-игру одним промптом в 2026 году. Но прототип для геймджема? Легко. Главное - реалистичные ожидания и правильная структура промпта.
Экспериментируйте с разными моделями. GLM 4.7 Flash отлично подходит для Three.js, Claude 3.7 Sonnet - для сложной логики, DeepSeek Coder V3 - для оптимизации кода. Каждая модель имеет свои сильные стороны.
И помните: лучший промпт - тот, который работает. Не красивый, не умный, а именно рабочий. Скопируйте промпт-победитель, адаптируйте под свои нужды и создайте свою первую 3D игру на Three.js. Сегодня.