Страница 1 из 1

Кастомные шейдеры для TS - присоединяйтесь

СообщениеДобавлено: 20.02.2018, 10:23
Skif
Несколько вечеров, проведенных в общении с папкой dev симулятора, позволили сделать выводы, что разработчики оказались столь политически незрелы, что вывалили в шаловливые ручки пользователей исходные файлы шейдеров, используемых игрой. Исходники лежат в формате fx, рядом с ними лежит скомпилированный и используемый игрой файл fx.o . Чем скомпилировать - есть утилитка от NVidia.

А теперь внимание, уважаемые знатоки, вопрос - кто разбирается в структуре шейдерного файла и хочет повозиться с кодом? Это работает, проверено. Как минимум, можно попробовать подправить особо глючные шейдеры, добавить аппаратный пост-процессинг вроде SSAO, Distant Blur и HDR. А также я непременно попробую реализовать столь желанный мной хайрез-мод для текстур ландшафта. Меня бесят карты в 256 пикселей на 8 метровую сетку, благо вся математика по развертке их на атласе ландшафта опрометчиво описана в шейдере. Попробую сделать хотя бы 512, как в старых версиях Траинз, а лучше 1024, что уже будет соответствовать вполне современным игровым стандартам. Не знаю, как вам, а мне картинка из TS доставляет порой сильнее, чем из "новейшего" TSW. Я уверен, если к нему немного приложить руки, его еще рано отправлять на полку.

Побочный эффект - скорее всего, потеряется совместимость с дефолтными текстурами ландшафта, но ради столь жирного пирога, можно написать и батник, подменяющий шейдера. Если МСТС можно - почему нельзя нам? :haha:

Re: Кастомные шейдеры для TS - присоединяйтесь

СообщениеДобавлено: 21.02.2018, 00:42
Skif
Успешно расковырял и опробовал технологию редактирования и компиляции существующих в игре шейдеров.


Теперь нужен кто-нибудь, кто разбирается в их коде, так как, например, визуальных изменений в ландшафте мне получить не удалось. Я вообще не уверен, что через шейдер можно изменить масштаб и пиксельную плотность текстур ландшафта.

https://www.trainsimdev.com/forum/viewt ... 7&start=10

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

Re: Кастомные шейдеры для TS - присоединяйтесь

СообщениеДобавлено: 21.02.2018, 11:06
Tuborg
Может быть удастся поправить шейдер TrainPostDPPobjectDiffuse.fx, который имеет большее сглаживание и удачно применяется в освоении контактной сети, но не освещается искусственными источниками света? Очень он расстроил меня в свое время. Я даже писать куда-то в саппорт, но отклика так и не получил.

Re: Кастомные шейдеры для TS - присоединяйтесь

СообщениеДобавлено: 21.02.2018, 11:15
Skif
Судя по популярности темы, никто этого делать не будет. Всем надо "вынь да полож" - и желательно нахаляву.

Re: Кастомные шейдеры для TS - присоединяйтесь

СообщениеДобавлено: 21.02.2018, 11:24
i2GR
скорее, никто не умеет

Re: Кастомные шейдеры для TS - присоединяйтесь

СообщениеДобавлено: 21.02.2018, 12:06
Skif
А я умею? Я, по крайней мере, пробую. Если кто-то знает устройство FX-шейдера, сможет достаточно быстро разобраться.

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

Касаемо ландшафта:

- попытка увеличить разрешение текстуры для грунта с 256 до 512 пикселей (самого файла) не вызывает никаких визуальных изменений, текстура остается того же качества и масштаба, что и для 256.
- попытка увеличить разрешение с 256 до 1024 уже порождает любопытный эффект - текстура "плывет", причем неравномерно по координатам U и V.

В обоих случаях эффект не зависит от изменений в математике шейдера, что вызывает подозрение, что через шейдер поддерживаемое разрешение карт террейна не изменить.

Re: Кастомные шейдеры для TS - присоединяйтесь

СообщениеДобавлено: 21.02.2018, 12:50
hellishfire
Если кто-то знает устройство FX-шейдера

Я думаю, что в этом проблема.

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

Re: Кастомные шейдеры для TS - присоединяйтесь

СообщениеДобавлено: 21.02.2018, 13:24
Skif
Было бы что улучшать. Откровенно говоря, дотянуть до уровня графики, скажем, Albula Line, можно существующими шейдерами - грамотно применив и настроив. Можно даже получить подобие HDR эффекта, если сделать очень мощное солнечное освещение и использовать более яркие и сочные цвета в текстурах. На очень многих последних DLC авторы начали работать как раз в таком стиле. Результат налицо - по сравнению с древними DLC "MSTS style", от серости окружения на которых просто воротит, современные карты смотрятся очень даже приятно.

А вот проапгрейдить ландшафт до уровня, соответствующего объектам окружения и рельсам, было бы очень полезно. Даже скайдом уже можно делать очень и очень красивым, и не только для 3D погоды - старые картонные небеса просто были очень старые, и их авторы не использовали текстур высокого разрешения. Небо на той же Albula вполне современное и не вызывает рвотных позывов.

В общем, копать смысл есть, но исключительно с целью:

- улучшить шейдер поверхности земли
- исправить баги освещенности в шейдерах для контактной подвески и схожих лофтовых
- возможно, доработать шейдеры стекол и погодных эффектов, хотя они пригодны и "из коробки".
- опционально (если раскопать шейдер ландшафта) - можно попробовать дописать в него проход для обработки нормалей, что радикально улучшит картинку поверхности земли. Также можно подправить шейдер процедурной растительности, чтобы она корректно освещалась источниками света, это может позволить снова использовать эту траву в "кисточках" , а не высаживать руками. Кроны деревьев, конструктивно аналогичные билбоардам травы, освещаются прожекторами корректно. А можно и отказаться от билбоардов на террейне, толку от них никакого - в отличие от крон деревьев, где карточки экономят поликаунт при создании пышной кроны, трава реалистичнее выглядит, собранная из не вращающихся плоскостей.