Рендеринг и движок Enfusion

От автора с reddit: На официальном форуме велось много разговоров насчёт нового рендера. Я создал этот поясняющий пост о том, что такое рендер и какую роль он играет. Вся информация, написанная в этом посте, основана на комментариях разработчиков с официального форума.

Что такое визуализация (рендеринг)?
Рендеринг это особый процесс создания или получения изображения по 2D или 3D модели. Этот процесс отвечает за геометрические данные, положение камеры наблюдателя, текстурирование, освещение и степень затенения, которые объединяясь, создают визуальную сцену. Чаще всего процесс рендеринга разделяется на CPU и GPU. Большинство световых эффектов создаются с помощью сложного процесса рендеринга, который использует источники света в качестве основы.

Когда мы описываем изменения, чаще всего мы говорим об изменении версии DirectX. DirectX - это просто интерфейс программирования приложений, который разработчики могут использовать при написании кода для процесса рендеринга. Версия DirectX выступает в качестве средства, которое упрощает процесс визуализации компьютерной сцены. Чем новее версия DirectX, тем эффективнее разделяется процесс рендеринга между CPU и GPU.

Почему в DayZ плохой рендеринг?
Как мы все знаем, города приводят к сильным падениям FPS и чаще всего FPS падает ниже 30, даже для топовых игровых компьютеров. Рендеринг в DayZ сильно устарел, он использует технологию DirectX 9, а некоторые элементы рендеринга ночного времени вообще используют технологию DX 7. В DayZ и Arma 3 процесс рендеринга подключен к симуляции (то есть все функции завязаны напрямую). Это сильно влияет на FPS, связанно это с тем, что сервер обрабатывает большую часть информации о луте, игроках, зомби, физике и прочее. Когда симуляция связана с рендерингом, то низкий FPS сервера сильно влияет на клиентский FPS и ему не важно, какие у вас компы.

Что нам даст новый движок Enfusion с точки зрения рендеринга?

  • Рендеринг будет отключен от симуляции
  • GPU станет в большей степени использоваться в процессе визуализации сцены за счёт оптимизации, нового освещения, большей выборки, новых материалов, новой модели местности, системы частиц и т.п.
  • Большинство видимых изменений помимо производительности будут добавлены со временем
  • Улучшенная система частиц (кровь, вспышки от выстрела, искры от пуль, взрывы и т.д.)
  • Полный переход на более новую версию DirectX намечен на конец года (это значит, что игра пока будет использовать DX 9, по крайней мере, ещё 10 месяцев)
  • Пост-обработка и некоторые более продвинутые эффекты тоже запланированы на конец года
  • Переход будет на DirectX 11, в будущем возможно на DirectX 12
  • Эффект рассеивания света и улучшенная визуализация всех источников света (свет больше не будет проходить сквозь объекты)
  • Улучшенная и более правдоподобная визуализация ночного времени
  • Движок Enfusion, скорее всего, будет использоваться в будущих проектах BI (возможно ArmA 4?)
  • Другие визуальные эффекты, связанные с персонажем (кровотечение, намокание, признаки заболеваний и т.д.)
  • Улучшенное отсечение невидимых объектов (технология Occlusion culling)
  • Поддержка многоядерных и многопоточных систем
  • Переход на 64-битные системы (пора бы уже забыть Win XP)
  • Улучшенная обработка объектов
  • Темные интерьеры зданий (в закрытых помещениях при отсутствии освещения)
  • Большие визуальные изменения

Когда работа над этим будет завершена?
К концу первого квартала 2015 года, мы должны закончить работу над отключением рендеринга от симуляции. Это поможет устранить проседания FPS связанные с загруженностью сервера. Полная замена текущего рендера совершенно новой технологией, переход на DirectX 11\12 и новые эффекты визуализации будут осуществляться постепенно вплоть до релизной версии DayZ.

Вся информация из оригинального поста на reddit взята из комментариев разработчиков на официальном форуме.


Авторизируйтесь или создайте новый аккаунт, чтобы оставить комментарий.