feat(integrations): add retro doom web engine and agy proxy nginx config
This commit is contained in:
1 parent
b8db5a123d
commit
50eadb4b5e
15 files changed
+6397
No files matched your search
Executable
+100
@@ -0,0 +1,100 @@
|
||||
# 📜 План разработки проекта DOOM 3D (Full 3D WebGL)
|
||||
|
||||
**Цель:** Создать полноценный браузерный 3D ретро-шутер в стиле DOOM / Quake на базе **Three.js** (с поддержкой полной трехмерности: многоуровневые карты, перепады высот, лестницы, прыжки, объемные комнаты, освещение и физика коллизий) с аутентичным 2D ретро-HUD.
|
||||
|
||||
Доступ по URL: [ai.qpid.pro/doom/](https://ai.qpid.pro/doom/)
|
||||
|
||||
---
|
||||
|
||||
## 🛠️ Стек технологий
|
||||
- **3D Графика & Рендеринг:** Three.js (WebGL / WebGPU) — полноценный 3D пайплайн, шейдеры, динамический свет, тени, партиклы.
|
||||
- **Физика и Коллизии:** Octree / Capsule Collider (быстрые коллизии для FPS со сложной геометрией, ступенями, склонами и прыжками) или Rapier3D.
|
||||
- **2D HUD / UI:** 2D Canvas / DOM Overlay в аутентичном стиле Doom (панель состояния, анимированное лицо Doomguy, прицел, всплывающие сообщения).
|
||||
- **Звук:** Web Audio API (пространственный 3D позиционный звук, ретро-SFX, саундтрек).
|
||||
|
||||
---
|
||||
|
||||
## 🗺️ Этапы разработки (Roadmap)
|
||||
|
||||
### 🔹 Этап 1: 3D Движок и Базовая физика перемещения
|
||||
- [ ] Инициализация Three.js сцены, камеры от первого лица (FPS Camera) и рендерера с поддержкой адаптивного разрешения и пикселизации (ретро-эффект).
|
||||
- [ ] Захват курсора (Pointer Lock API) и плавный обзор мышью с настраиваемой чувствительностью.
|
||||
- [ ] Физический контроллер игрока (FPS Controller):
|
||||
- Перемещение WASD (ходьба, бег с зажатым Shift)
|
||||
- Прыжки, гравитация, падение
|
||||
- Подъем по ступеням и пандусам (step-climbing)
|
||||
- Collision Detection на базе Octree / Capsule против сложной 3D геометрии.
|
||||
- [ ] Мобильное управление: виртуальные стики перемещения и обзора + кнопки стрельбы и прыжка.
|
||||
|
||||
---
|
||||
|
||||
### 🔹 Этап 2: 3D Уровни и Геометрия (Многоэтажность и Архитектура)
|
||||
- [ ] Модульный 3D генератор / загрузчик уровней:
|
||||
- Многоуровневые здания, мосты, тоннели, шахты лифтов, балконы и открытые арены.
|
||||
- Поддержка форматов GLTF / OBJ / кастомных воксельных и блочных карт.
|
||||
- [ ] Освещение и атмосфера:
|
||||
- Динамические точечные источники света (факелы, мигающие лампы, лава).
|
||||
- Ambient Occlusion, туман (Fog) и затемнение глубины.
|
||||
- [ ] Интерактивные 3D объекты:
|
||||
- Раздвижные и подъемные двери с коллизиями.
|
||||
- Настенные переключатели и рубильники.
|
||||
- Платформы и движущиеся лифты.
|
||||
|
||||
---
|
||||
|
||||
### 🔹 Этап 3: Оружие от 1-го лица и Боевая система
|
||||
- [ ] Рендеринг оружия в руках (3D модели / анимированные спрайты с эффектом присутствия):
|
||||
- Кулак / Бензопила
|
||||
- Пистолет (Pistol)
|
||||
- Дробовик (Shotgun / Super Shotgun)
|
||||
- Скорострельный пулемет (Chaingun)
|
||||
- Ракетница (Rocket Launcher)
|
||||
- Плазменная пушка (Plasma Gun / BFG 9000).
|
||||
- [ ] Визуальные и физические эффекты стрельбы:
|
||||
- Отдача камеры, покачивание оружия при ходьбе (Weapon Bobbing).
|
||||
- Вспышки дула (Muzzle Flash) с динамическим освещением комнат.
|
||||
- Hitscan лучи с трассерами и искрами/следами от пуль на стенах (Bullet Decals).
|
||||
- Физические 3D снаряды (ракеты, плазменные шары) с частицами дыма и взрывами с радиусом поражения.
|
||||
|
||||
---
|
||||
|
||||
### 🔹 Этап 4: 3D Враги и ИИ (AI)
|
||||
- [ ] Модели / 3D-биллборды классических монстров (Зомби-стрелки, Импы, Демоны, Какодемоны).
|
||||
- [ ] Пространственный 3D ИИ с навигацией (Raycast Line of Sight, NavMesh / 3D Waypoints):
|
||||
- Поиск пути с учетом высот и лестниц.
|
||||
- Состояния: Патруль $\rightarrow$ Обнаружение $\rightarrow$ Преследование $\rightarrow$ Атака (дальняя/ближняя) $\rightarrow$ Уклонение $\rightarrow$ Смерть.
|
||||
- [ ] 3D Ragdoll / физика отлетающих частиц и анимации гибели монстров.
|
||||
|
||||
---
|
||||
|
||||
### 🔹 Этап 5: Предметы, Лут и Интерактивность
|
||||
- [ ] 3D вращающиеся предметы с мягким свечением:
|
||||
- Аптечки и стимуляторы (Health).
|
||||
- Броня и сферы бессмертия (Armor / Soulsphere).
|
||||
- Коробки с патронами, гильзами и батареями.
|
||||
- Цветные ключ-карты доступа (Red, Blue, Yellow).
|
||||
- [ ] Взрывающиеся токсичные бочки (Explosive Barrels) с цепной детонацией.
|
||||
|
||||
---
|
||||
|
||||
### 🔹 Этап 6: Аутентичный HUD и Интерфейс
|
||||
- [ ] Классическая статус-панель в стиле DOOM:
|
||||
- Значения здоровья (HEALTH), брони (ARMOR), патронов (AMMO).
|
||||
- Анимированный аватар Doomguy (эмоции, ранения, оскал при стрельбе).
|
||||
- Индикаторы собранных ключей доступа.
|
||||
- [ ] Прицел, всплывающие уведомления о подборе предметов («Picked up a shotgun!») и экран получения урона (красная вспышка).
|
||||
- [ ] Экран паузы, меню настроек (FOV, чувствительность, звук, ретро-фильтры).
|
||||
|
||||
---
|
||||
|
||||
### 🔹 Этап 7: Пространственный Звук и Саундтрек
|
||||
- [ ] Web Audio 3D Positional Audio (звук шагов и рычания монстров позиционируется в 3D пространстве).
|
||||
- [ ] Звуки выстрелов, перезарядки, взрывов, открывания тяжелых железных дверей.
|
||||
- [ ] Динамичный рок / метал саундтрек.
|
||||
|
||||
---
|
||||
|
||||
### 🔹 Этап 8: Оптимизация, Полировка и Деплой
|
||||
- [ ] Стабильные 60+ FPS (Frustum Culling, Instanced Meshes для повторяющихся элементов).
|
||||
- [ ] Шейдер пикселизации / CRT-монитора (опциональный ретро-фильтр).
|
||||
- [ ] Проверка и тестирование по адресу `https://ai.qpid.pro/doom/`.
|
||||
Reference in new issue
Block a user