Перейти к содержанию
ProAPNick

DE PHPEngOneXr - 3D движок ЗП

Рекомендуемые сообщения

 

 

PHPEngOneXr — высокопроизводительный движок

-----
Собственный игровой движок, написанный с нуля, рендер на DirectX 12.
Геймплейная логика управляется скриптовым слоем (PHP), тяжёлые/численные
алгоритмы (culling, BVH, работа с геометрией, физика) реализованы нативно
на C++ ради производительности.

Цель проекта — приблизиться по возможностям к движку уровня X-Ray Engine
(S.T.A.L.K.E.R.), с прямой загрузкой оригинального игрового контента
(уровни, текстуры, шейдерные материалы, погодные пресеты и т.д.).

Рендеринг
---------
- Полностью на DirectX 12: современный low-level рендер-пайплайн,
  explicit resource management, минимальный CPU overhead на draw call.
- Deferred-рендеринг (G-buffer): альбедо/нормали/позиция считаются отдельным
  проходом, освещение и тени применяются после — эффективнее классического
  forward-рендера на сценах с большим числом источников света.
- Прямая загрузка оригинальных уровней и геометрии — сцены загружаются из
  "живых" игровых данных, а не из конвертированных прокси-форматов.
- Динамическое освещение: point/spot источники света, считанные напрямую
  из авторских данных уровня, полноценная аккумуляция нескольких
  источников на пиксель.
- Каскадные тени (CSM, cascade shadow maps) с плавным затуханием между
  каскадами и авто-подгонкой под положение камеры.
- Небо, облака, вода — отдельные материалы с собственной анимацией
  (движение облаков, рябь на воде, ветровые эффекты).
- Система погоды: несколько погодных пресетов (ясно/пасмурно/дождь/гроза
  + возможность авторить свои), полный цикл дня и ночи с плавной
  интерполяцией освещения, тумана и цвета неба по времени суток.
- Пост-обработка: bloom, тонмаппинг, полноэкранные эффекты.
- Система частиц на GPU (искры, дым и т.п.).

Производительность
-------------------
- Активно используется многопоточность: фоновая обработка culling'а,
  геометрии и других тяжёлых расчётов вынесена на пул потоков, не блокируя
  основной рендер-поток.
- Frustum culling поверх BVH-дерева — на сцену с несколькими тысячами
  объектов рендерится только то, что реально попадает в камеру, что даёт
  кратный прирост FPS на насыщенных уровнях по сравнению с наивной
  отправкой всей геометрии на GPU каждый кадр.
- Неблокирующая синхронизация CPU/GPU (двойная буферизация кадровых
  ресурсов) — CPU не простаивает в ожидании GPU между кадрами.
- Результат: сотни-полторы кадров в секунду на средних сценах уровня
  S.T.A.L.K.E.R. на GPU уровня GTX 970, с большим запасом на более новом
  железе.

Звук
----
- Собственная звуковая подсистема: воспроизведение множества
  одновременных голосов/эффектов, привязка звука к игровым событиям
  и погодным состояниям (амбиент дождя, грома и т.д.).

Физика
------
- Базовая физика тел: гравитация, столкновения с окружением, kinematic-
  контроллер персонажа (ходьба, прыжки, скольжение по поверхностям).

Игровой слой
------------
- Скриптовый слой поверх движка позволяет быстро собирать игровые сцены
  и механики без пересборки движка (оружие, HUD, интерактивные объекты).
- Встроенный HUD/UI-рендер (текст, полоски здоровья/прогресса, произвольные
  оверлеи) и живой счётчик FPS/статистики сцены для отладки прямо в игре.

Статус
------
Активная разработка. Базовый рендер-конвейер, загрузка контента,
освещение, погода и звук — рабочие и стабильно тестируются на реальных
игровых уровнях. Ведётся точная донастройка визуального соответствия
оригиналу и дальнейшая оптимизация производительности.

 

Плановая работа 2+ месяца

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 

ТОНИ СТАРК СОБРАЛ МИНИ РЕАКТОР СИДЯ В ЯМЕ
ИЗ МЕТАЛЛОЛОМА

В нашем случае - сидя на форуме аппро и собрал движок
А вообще... Я незнаю как на это реагировать, вроде круто, что чел собирает Свой движок, вдохновляясь устаревшим XRay движком

Намного более интересующий вопрос - будет видео демонстрации возможностей движка? Банально перенеся сюжетку ЗП на это двигло, незнаю

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 
Только что, Supremeee сказал:

Банально перенеся сюжетку ЗП на это двигло, незнаю

Да, планируется полностью перенести всю сюжетную линию. 

---

Загрузка между уровнями будет устроена с помощью телепортов.

- Движок умеет динамически подгружать карты, используя чанки по секторам.

- Огромные карты для него не проблема.

 

Срок доведения до минимальной алфы составляет 2 месяца, буду публиковать обновления раз в пару дней

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти

  • Последние посетители   2 пользователя онлайн

Важная информация

Мы разместили cookie-файлы на ваше устройство, чтобы помочь сделать этот сайт лучше. Вы можете изменить свои настройки cookie-файлов, или продолжить без изменения настроек. Оставаясь на сайте, вы подтверждаете свое согласие на их использование. Политика конфиденциальности | Условия использования