Files

7.5 KiB
Executable File
Raw Permalink Blame History

📜 План разработки проекта DOOM 3D (Full 3D WebGL)

Цель: Создать полноценный браузерный 3D ретро-шутер в стиле DOOM / Quake на базе Three.js (с поддержкой полной трехмерности: многоуровневые карты, перепады высот, лестницы, прыжки, объемные комнаты, освещение и физика коллизий) с аутентичным 2D ретро-HUD.

Доступ по URL: 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/.