Больше гайдов
Сейчас читают
Half-Life 2
Аватар Новый никК Новый никК

Делаем RTX ON колхоз с помощью ReShade на примере Black Mesa

27
2
Поделиться
Телеграфировать
Всем привет! Возможно, вы встречали мои breathtaking каменты к той или иной новости или статье. Сегодня я сделаю что-то чуть менее полезное, а точнее, напишу небольшой гайд о том, как установить и настроить ReShade вкупе с шейдером небезызвестного Pascal Gilcher aka martymcmodding aka McFly. Он написал не один шейдер, но в данной статье нас интересует 'Screen-Space Ray Traced Global Illumination', или по-русски - шейдер 'глобального освещения в экранном пространстве'. В общем, поехали.
Делаем RTX ON колхоз с помощью ReShade на примере Black Mesa

Попробую без воды, поэтому что такое ReShade, GI и так далее - ищите сами, если ещё не в курсе.

Для начала нам нужно:

  • Сама игра, взять её можно тут или тут. В принципе подойдёт почти любая игра, но дальнейшие шаги будут немного отличаться.
  • Сам ReShade.
  • Шейдер для GI можно взять тут без регистрации и смс или поддержать автора на патреоне и получать последии версии по мере обновления.
  • Бонусом можно взять вот этот шейдер, чтобы полить всё маслом.

Когда всё скачано, можно приступать к установке. Если шаришь, дальше можешь вообще не читать и крутить ползунки на своё усмотрение!

Первым делом нужно установить ReShade, он ставится на .exeшник игры. В случае с ремастером халфы это будет не bms.exe, который гордо устроился в корневой папке игры, а captioncompiler.exe из папки /bin. Почему? Да хз, вероятно, bms - это что-то вроде лаунчера для всех тех костылей, которые авторы ремастера наворотили при его создании. Уверен, что читатель знает почему и любезно напишет об этом в каментариях.

При установке выбираем API DirectX 9 - на нём и работает наш пациент. У вас спросят, какие фильтры ставить. Тут можно откликать то, что вам не надо или удалить позже вручную из папки \bin\reshade-shaders\Shaders. Жмём далее и через пару секунд установщик, довольный собой, сообщит, что всё готово.

Теперь в папке \bin есть две новые папки: Shaders и Textures. Вот в эти папки и нужно добавить содержимое остальных архивов. Шейдеры к шейдерам, текстуры к текстурам, а прах к праху. АХТУНГ! из архива qUINT-master нам нужны только qUINT_mxao.fx и qUINT_ssr.fx !

Всё установлено.


Проверить, правильно ли всё встало и встало ли вообще, можно, при загрузке игры. Если всё правильно, то слева вверху будет аналогичное окошко. Если окна нет или там красная надпись, значит, что-то пошло не так - вам наверх к инструкции по установке.

Работает? Запускай игру и приступай к настройке.

Меню решейда по дефолту вызывается кнопкой Home/Pos1. Если вдруг не вызывается, закрой игру и в папке, где установлен решейд, открой в блокноте файлик ReShade.ini. Добавь следущие строки:

[INPUT]

KeyMenu=36,0,0

Вкладки:

  •  HOME: тут все шейдеры, лежащие в папке
  •  DX9: тут depth buffer
  •  Settings: ВНЕЗАПНО настройки решейда
Туториал можно смело скипать, ну или не надо...

Depth Buffer нужен, чтобы шейдеры могли работать.

Нам как раз это и надо, так что ставим галочки на Use aspect ratio heuristics и Copy depth buffers before clear operation. С этими настройками он будет находится при загрузках из локи в локу. К сожалению, иногда возможно придётся самому находить правильный индекс. АХТУНГ! Стандартное глаживание стоит отключить - это снизит частоту поиска индекса. Если вам нужно сглаживание, подключите его через решейд.

Когда галки стоят, переходим во вкладку Home и ищем в списке шейдер MXAO qUINT, как на скрине слева. Будем настраивать затенение. Активируем его, в выпадающем меню Debug выбираем AO/IL канал и... видим белый экран. Теперь нужно вернуться во вкладку буфера и протыкать все галочки, что находятся под линией. Если вдруг экран на них всех белый - возвращаемся домой и меняем среднее значение в Edit global preprocessor definitions на с 1 на 0. Снова тыкаем галочки под линией и готово, затенение пошло, изо всех щелей попёрло!

Если интересно, вот про настройки.

Затенение - это дополнительный шейдер, поэтому советую не перекручивать ползунки, а сделать его максимально мягким. Однако, если вы любитель вырвиглазной картинки, а не реализма, кто я такой, чтобы вам запрещать?

Без фанатизма своими словами о настройках:

  • Sample Quality: Количество сэмплов, оно же качество. Сильно грузит систему
  • Sample Radius: Радиус, на который идёт эффект. Лучше минимальный
  • Normal Bias: Радиус самозатенения моделей. Советую не перегибать палку
  • Render Size Scale: Разрешение генерируемой карты. Лучше оставить 1:1
  • AO Amount: Количество затенения. Советую не перегибать палку
  • Enable Debug View: Отображение карты. Настраивать рекомендую в этом виде

Цель АО - подчеркнуть детали полигональных моделей и избавить их от эффекта "парящих" над поверхностью обьектов. Это не основное освещение.

Закончив с затенением, переходим к виновнику этого гайда. Отключаем АО и находим в списке шейдеров RTGlobalIllumination, включаем. В субменю Debug включаем Lighting канал и копируем настройки со скриншота.

Либо приступаем к настройке.

Это основное освещение, помимо фейкового, от создателей самого ремейка. Его суть заключается в том, чтобы картинка была чуть более обьёмной и реалистичной, чтобы появились свет и тень там, где он нужны, а так же colorbleeding. Настраивать лучше всего там, где больше деталей и есть непись(желательно живая).

Без фанатизма своими словами о настройках:
  • GI Render Resolution Scale: Разрешение генерируемой карты. Советую 1:1
  • Ray Length: Длина лучей - т.е. как далеко они шастают после отскока
  • Ray Amount: Кол-во лучей. Больше - лучше, но очень бьёт по системе
  • Ray Step Amount: Шаг луча. Чем больше, тем лучше
  • Z Thinckness: Толщина обьектов
  • AO Intensity: Сила тени
  • BL Intensity: Сила света
  • INFINITE_BOUNCES: Количество отскоков света. Очень бьёт по производительности, но делает картинку ещё реалистичнее

Разрешение карты, как и в случае с АО шейдером, лучше всего делать на 1 во избежание артефактов.

Лучи лучше всего держать в узде, контролируя расстояние их колобродничества. Впрочем, если выкрутить на максимум, то тоже получается интересный эффект. Но для этого нужен дубликат шейдера, чтобы первым делать колорблид, а вторым - задавать освещение всей комнаты. Поиграть так не выйдет, но скриншотики поделать самое оно. Смотри скриншот GI+GI.

Количество и шаг лучей зависят от производительности системы. Не забывай, что помимо ГИ, есть ещё и другие шейдеры, которые тоже кушают ресурс. Но чем больше, тем лучше.

А вот дружок Z Thinckness  - очень важный! Так как решейд всего лишь считывает из памяти вертексы и работает на их основе, полной 3д модели у него в доступе нет. А это значит, что толщину обьектов в кадре решейд не знает. Из-за этого образуются хало-эффекты вокруг предметов.

Силу света и тени настраивать по вкусу, но стоит помнить о том, что кислотность не делает картинку реалистичнее.

INFINITE_BOUNCES меняется в настройках шейдера, возможные значения: 1 или 0. После изменения нужно перекомпилировать шейдер.



Напоследок добавим немного масла. Расписывать подробно не буду, и так вышло много буков. Так что просто копируйте настройки со скрина или экспериментируйте сами. Если кратко, то это отражения в зависимости от того, под каким углом игрок смотрит на поверхность. Очень крутой эффект, добавляет тонну реализма, так как всё в мире отражает свет. Масла много не нужно - вредно. Вместо реализма можно получить жирные поверхности.

Ну и парочка скриншотов к финалу.

Итог

До реального RTX этому подходу шейдинга, как RTX(и аналогам) - до реального анбиаст рендеринга. Что-то не работает из-за ограничений ReShade, где-то не хватает настроек в шейдерах, потому что их пишут на энтузиазме. Конечно же, квадратные некро-модели самой Black Mesa в первую очередь ставят палки в колёса. Да и супер-реалистичные отражения, из-за отсутствия возможности контролировать разные материалы раздельно, смотрятся часто нелепо. На некоторых моделях решейд вообще ломает phong shading. В общем, проблем не счесть. Несмотря на всё это, вкупе с ремастером, игра 98 года выглядит намного бодрее. Так что, я бы скорее рекомендовал к употреблению эти костыли.

Этот гайд появился благодаря каменту в этой новости. Я подумал, что есть люди, которым будет интересно, да мне и самому хотелось поковыряться в чём-то новом. Не меньше хотелось перепройти эту игру. Последний раз я бегал по этим коридорам лет 20 назад, я все ещё их помню. Удивительно, сколько полезной информации может хранить наш мозг.

Не болейте, увидимся ещё лет через 5!

Дисклеймер и полезные ссылки, для тех кому буков показалось мало О.о

Скрины получились темнее чем на самом деле в игре, переделывать не хотелось, необессутте. Так же, я не претендую на звание грандмастера решейда, так что если я в чём то ошибся - вэлком в коментарии!

  • Где то 25% титульной картинки принадлежит вот этому господину
  • Вот здесь можно подробно прочитать всю имеющуюся инфу о шейдере
  • А вот тут, про сам решейд
  • Редактировал мёдаед, не спрашивайте, насладитесь отсутствием ошибок

Теперь точно всё!

Теги: Half-Life 2, Half-Life, Black Mesa, Креатив, Гайд, Игры, Годнота
Аватар Новый никК
Новый никК
8 подписчиков
к предыдущим комментариям