Как настроить ENBSeries. Часть 3
1. Вступление
2. Точная настройка эффектов ENBSeries (продолжение)
2.1. Настройка цветокоррекции
2.1.1. О палитре
2.2. Настройка воды
2.3. Настройка теней
2.4. Настройка эффекта motion blur
2.5. Настройка попиксельного освещения
2.6. Настройка глубины резкости
2.7. Другие настройки
Для удобства чтения статья разбита на три части, а для полноты восприятия обязательно обратитесь также к первой и ко второй части.
В первой рассматривались общие принципы работы ENBSeries и основные параметры. Во второй была рассмотрена тонкая настройка эффектов — отражений, эффекта bloom и SSAO. Третья часть продолжает вторую и тоже сосредоточена на настройке эффектов: описана настройка воды, теней, эффекта motion blur, освещения, глубины резкости и некоторые другие опции ENBSeries.
Продолжаем рассмотрение точной настройки эффектов.
ENBSeries дает возможность использования цветокоррекции, что может быть уже само по себе очень эффективно, ведь с помощью настроек цвета можно достигать отличных результатов.
Ниже вы видите скриншот из моего мода «Захват аэропорта», в комплекте с которым идут настройки ENBSeries, где при помощи цветокорекции изображение сделано почти черно-белым, а на втором скриншоте мод Autumn Sunshine, где при помощи палитры (о том, как подключать палитру написано ниже) достигается стилизация под теплые, желтоватые осенние тона.
Цветокоррекцию можно использовать для передачи времени, эпохи (в моде, посвященном событиям, которые имели место быть давно, можно применить выцветшие или вовсе черно-белые краски), для придания модификации определенного стиля или настроения.
Настройки цветокоррекции находятся в разделе [COLORCORRECTION] файла enbseries.ini.
DarkeningAmountDay — затенение или осветление темных областей экрана днем. Значения — от -100 до 100. Чем ниже — тем светлее.
ScreenLevelDay и ScreenLevelNight — параметры определяют среднюю яркость (от 0 до 100), которая будет восприниматься библиотекой как дневное время и ночное время суток соответственно.
DarkeningAmountNight — отвечает за уровень затенения или осветления темных областей экрана ночью, значения — от -100 до 100. На мой взгляд, темные и достаточно реалистичные ночи получаются со значением -40.
GammaCurveDay и GammaCurveNight — отвечают за коррекцию гаммы в дневное и, соответственно, ночное время суток. Значения — от -10 до 10; отрицательные значения делают изображение более выцветшим, лишенным цветов, положительные же значения делают изображение насыщенным.
UsePaletteTexture — параметр, который отвечает за то, будет (значение 1) или нет (0) использоваться палитра.
Что такое палитра? Это изображение в формате BMP, находящееся в папке с игрой (должно называться enbpalette.bmp), ориентируясь на которое ENBSeries «окрашивает» изображение в заданные цвета.
С помощью палитры можно сделать цвета приближенными к какому-то определенному оттенку, например, задать «подгонку» цветов под теплые тона или, наоборот, под холодные, сделать цвета более яркими в целом или более темными (кстати, яркость целиком берется из палитры, поэтому при включенной палитре параметры ScreenLevelDay и ScreenLevelNight неактивны).
Многие почему-то совершенно искажают цвета, подключая палитру с кислотными цветами, что совсем извращает изображение (разработчики компьютерных игр тоже так делают). На мой взгляд, нужно стремиться к реалистичной, не перенасыщенной, не чрезмерно «цветастой», но приятной для глаза картинке.
Смотрите также информацию о палитре на
Реалистичная вода — одна из самых красивых особенностей ENBSeries — настраивается в разделе [WATER] при помощи трёх параметров:
UseWaterDeep — будет (значение 1) или нет (0) использоваться учет глубины воды (плавный переход между глубинами).
WaterDeepness — «фактор полупрозрачности воды», как указано в инструкции (значения — от 0 до 1000), а визуально это смотрится примерно так: чем ниже значения параметра — тем более глубоким выглядит водоем (смотрите скриншот).
WaterQuality — качество воды (0 — максимальное, 2 — минимальное) .
Обратите внимание: качество обработки воды очень сильно меняется в зависимости от того, какая текстура воды (она находится в файле particle.txd папки models игры) используется. На первый взгляд это кажется неважным, однако текстура, хотя и не видна так, как когда эффекты воды ENBSeries выключены, задает общий вид воды (см. ниже скриншот из мода Endless Summer).
Настройки теней, которые с ENBSeries становятся мягкими и более реалистичными, находятся в разделе [SHADOW] файла с настройками.
ShadowFadeStart и ShadowFadeEnd — параметры отвечают за то, с какого расстояния тень будет появляться (в случае с первым) и исчезать (в случае со вторым параметром), значения — от 0 до 1000.
ShadowAmountDay и ShadowAmountNight — процент (от 0 до 100) яркости теней в дневное и ночное время соотвественно.
ShadowScreenLevelDay и ShadowScreenLevelNight — уровень (от 0 до 100) средней яркости, который будет восприниматься библиотекой как день и ночь соответственно.
ShadowQuality — качество теней, от 0 до 2 (0 — максимальное).
UseShadowFilter — будет ли использоваться фильтрация теней; фильтрация делает тени более «чистыми», лишенными шумов, но и больше нагружает видеокарту (1 — будет, 0 — нет).
ShadowBlurRange — степень (от 0 до 100) «мягкости», размытия теней (см. скриншот ниже, снятый в Spring Season 2.0).
Настройки эффекта motion blur, который размывает изображение при движении (или же при поворотах виртуальной камеры) осуществляется в секции [motionblur].
MotionblurQuality — качество эффекта (от 0 до 2), очень влияет на производительность, и кстати, в зависимости от качества эффект выглядит по-разному: со значением 0 размытие сглаженное, а со значением 2 остается шлейф от объектов, что тоже по-своему интересно.
MotionblurVelocity и MotionblurRotation — мощность размытия при движении вперед и мощность размытия при вращении камеры соответственно; значения — от 0 до 100.
Стандартное повершинное освещение автомобилей заменено в ENBSeries на попиксельное. Находятся настройки освещения в разделе [PERPIXELLIGHTING]. У всех параметров значения от 0 до 100.
SpecularColorMin и SpecularColorMax — отвечают за минимальное и максимальное, соответственно, ограничение освещения цвета specular (текстуры, назначенной на автомобиль как specular)
SpecularColorMultiplier — фактор материала specular.
SpecularGlossinessMin и SpecularGlossinessMax — минимальное и, соответственно, максимальное ограничение силы освещения.
SpecularGlossinessMultiplier — фактор воздействия освещения на все specular-материалы.
Настройки эффект глубины резкости (DOF, depth of field — когда то, что не в поле фокуса виртуальной камеры оказывается размытым, подобно глубине резкости в настоящей фотокамере), находятся в разделе [DEPTHOFFIELD].
Правильно настроенный эффект может очень здорово оживить картинку, добавив ей «кинематографичности», но плохо только то, что под размытие, которое он делает, подпадают также и панели (HUD) с оружием, временем и радар.
DOFQuality — качество эффекта (от 0 до 3)
DOFNumberOfPasses — число проходов для вычисления эффекта (от 1 до 5), что тоже влияет на качество (чем больше — тем лучше).
DOFFocusRange — дистанция, начиная с которой изображение будет терять фокус (от 1 до 1000).
DOFBlurinessRange — уровень размытия (от 1 до 10).
В разделе [ENGINE] содержится еще ряд любопытных настроек, которые помогут улучшить качество графики.
ForceAnisotropicFiltering — включает (1) или выключает (0) принудительную анизотропную фильтрацию текстур — технику, которая делает текстуры более сглаженными, устраняя неприятные их мерцания, что особенно улучшает изображение когда в игре используются текстуры высокого разрешения.
MaxAnisotropy — степень анизотропии (от 1 до 16).
ForceDisplayRefreshRate и DisplayRefreshRateHz — первый параметр (1 — включено, 0 — выключено) устанавливает принудительную частоту обновления экрана, которую можно (от 60 до 240) установить во втором параметре, но будьте осторожны с этим параметром, он может буквально привести к поломке монитора.
Любопытно, что в ряде более старых версий ENBSeries в настройках также был был раздел [PLUGIN] с одним-единственным (и нерабочим) параметром — WeatherMod, который активирует коррекцию цветом при установленном одноимённом моде (1 — включено, 0 — выключено).
Что ж, статья о настройке ENBSeries в трех частях подошла к завершению. Надеюсь, этот материал оказался для вас полезным. Не забывайте о важности самостоятельных экспериментов.
ENBSeries — отличная штука, и настраивая библиотеку можно добиться нужных результатов, изменив графику по своему вкусу.
Спасибо за прочтение.