Идеи как оптимизировать компилятор xrLC |
Здравствуйте, гость ( Авторизация | Регистрация )
Сайт S.T.A.L.K.E.R. Inside / [ЗП] Параметры командной строки / Распаковщик ресурсов
Идеи как оптимизировать компилятор xrLC |
26.01.2021, 20:33
Сообщение
#21
|
|
Почти Мастер Репутация: 1357 Группа: Участник Сообщений: 1155 Награды: 5 Регистрация: 28.05.2010 |
а сейчас вот занимается разбором сталкерских форматов Дай ему ссылку на xray_re, пусть не мучается
-------------------- Сверхнарод, не желающий кормить своего уицраора шаввой, будет кормить чужого гаввахом!
--------------- ------------ ---------- -------- ------ ---- -- |
 
|
|
|
|
26.01.2021, 21:14
Сообщение
#22
|
|
Дибил Репутация: 823 Группа: Забанен Сообщений: 4891 Регистрация: 08.01.2010 |
Trollz0r, он не декомпилит, он готовый левел грузит.
-------------------- Если вы заботитесь о своём пищеварении — мой добрый совет: не говорите за обедом о большевизме и о медицине. И, боже вас сохрани, не читайте до обеда новости на gameru. Да и после обеда.
|
 
|
|
26.01.2021, 21:20
Сообщение
#23
|
|
Продвинутый геймер Репутация: 24 Группа: Участник Сообщений: 398 Награды: 4 Регистрация: 30.09.2015 |
abramcumner, не можешь расписать как происходит просчет лайтмапов в билдах до 1537? Те что без смены погоды. Там потрясающе красивая графика получается
Сообщение отредактировал RSFSR - 26.01.2021, 21:21 |
 
|
|
26.01.2021, 21:29
Сообщение
#24
|
|
Игровой Бог Репутация: 1690 Группа: Участник Сообщений: 7021 Награды: 11 Регистрация: 22.02.2006 |
Много буков. Моя теория по "оптимизации" такова:
1. Отказаться от лайтмапов. Компиляторы с лайтмапами оставить только для билдо-проектов. 2. Отказаться от статичного рендера (dx8). Использовать не воспрещается, но безлайтмапная карта на нем будет выглядеть УГ. 3. В объектах отказаться от шейдера "default". Только def_shaders\def_vertex, def_shaders\def_aref_v, def_shaders\def_trans_v и т.п. 4. Ставить у проектов качество hemi 0. (см. пункт 7) 5. Грамотно настроенный безлайтмапный компилятор компилирует навороченную карту в среднем за 15-20 минут. 6. Результирующая картинка в игре дотягивается шейдерными спецэффектами типа SSAO, контраста и подстройкой r2_sun_lumscale* командами. 7. Вот проверенный компилятор тов. Дизеля для ЧН-СДК (может подойдет и для ЗП) с кое-какими моими техническими оптимизациями. Из минусов, что он 32-битный, на сверхсложных проектах упрется в ограничения памяти. Также с картинкой были какие-то глюки, пока в настройках проекта не выставил Hemisphere quality в 0. Из плюсов: почти мгновенная перекомпиляция сложных карт, оперативное внедрение правок, изначальная совместимость карты с ТЧ/ЧН/ЗП. 8. Как пример сочетания такой карты и шейдерных эффектов см. Liberty City для ТЧ. https://www.gameru.net/forum/index.php?s=&a...t&p=1686665 Сообщение отредактировал macron - 26.01.2021, 21:32 |
 
|
|
26.01.2021, 21:31
Сообщение
#25
|
|
. Репутация: 750 Группа: Участник Сообщений: 7072 Награды: 4 Регистрация: 30.07.2010 |
Trollz0r, он не декомпилит, он готовый левел грузит. Как будто хрей-ре не грузит готовый левел перед тем как его декомпилить. Я вот недавно делал редактор спауна для билдов на основе хрей-ре, с ЧАЭСкой из 1472 билда он справляется лёгко, хотя там всё очень отфанарно сделано, геометрия вся хранится в дисплейных списках, MU модели перестают быть MU, нет даже самой банальной оптимизации вроде фрустум куллинга. Короче сделать просмотрщик уровней из сталкера проще простого в наше время. |
 
|
|
26.01.2021, 21:55
Сообщение
#26
|
|
Игровое Воплощение Репутация: 394 Группа: Участник Сообщений: 4791 Награды: 4 Регистрация: 27.04.2011 |
|
 
|
|
26.01.2021, 22:44
Сообщение
#27
|
|
Продвинутый геймер Репутация: 24 Группа: Участник Сообщений: 398 Награды: 4 Регистрация: 30.09.2015 |
abramcumner,
Цитата Единственное, что в финалке опять что-нибудь сломали без сомнения. Слава билдобогам - рассеяные тени от солнца восстановили. И кривость sun-источников тоже пофиксили. Осталось лишь саму графику пофиксить. При одинаковой погоде в например 1511 билде и 1580 - разные картинки, причем не в пользу второго. Полагаю - дело может быть в том, что в 1511 лайтмапы состоят исключительно из статических источников и запекаются сразу вместе с текстурой террейна, а в более поздних - из хеми и сан-источников, которые занимают альфа-каналы |
 
|
|
26.01.2021, 22:45
Сообщение
#28
|
|
. Репутация: 750 Группа: Участник Сообщений: 7072 Награды: 4 Регистрация: 30.07.2010 |
В 1580 вообще нет хеми в лайтмапах, там он только повершинный.
|
 
|
|
26.01.2021, 22:50
Сообщение
#29
|
|
Босс Репутация: 257 Группа: Участник Сообщений: 4151 Награды: 4 Регистрация: 15.08.2008 |
|
 
|
|
27.01.2021, 01:37
Сообщение
#30
|
|
Продвинутый геймер Репутация: 24 Группа: Участник Сообщений: 398 Награды: 4 Регистрация: 30.09.2015 |
|
 
|
|
27.01.2021, 01:52
Сообщение
#31
|
|
Почти Игроман Репутация: 153 Группа: Участник Сообщений: 614 Награды: 4 Регистрация: 03.05.2012 |
1. Отказаться от лайтмапов. Компиляторы с лайтмапами оставить только для билдо-проектов. 2. Отказаться от статичного рендера (dx8). Использовать не воспрещается, но безлайтмапная карта на нем будет выглядеть УГ. 3. В объектах отказаться от шейдера "default". Только def_shaders\def_vertex, def_shaders\def_aref_v, def_shaders\def_trans_v и т.п. 4. Ставить у проектов качество hemi 0. (см. пункт 7) 5. Грамотно настроенный безлайтмапный компилятор компилирует навороченную карту в среднем за 15-20 минут. 6. Результирующая картинка в игре дотягивается шейдерными спецэффектами типа SSAO, контраста и подстройкой r2_sun_lumscale* командами. 7. Вот проверенный компилятор тов. Дизеля для ЧН-СДК (может подойдет и для ЗП) с кое-какими моими техническими оптимизациями. Из минусов, что он 32-битный, на сверхсложных проектах упрется в ограничения памяти. Также с картинкой были какие-то глюки, пока в настройках проекта не выставил Hemisphere quality в 0. Из плюсов: почти мгновенная перекомпиляция сложных карт, оперативное внедрение правок, изначальная совместимость карты с ТЧ/ЧН/ЗП. 8. Как пример сочетания такой карты и шейдерных эффектов см. Liberty City для ТЧ. https://www.gameru.net/forum/index.php?s=&a...t&p=1686665 1. Если под лайтмапами понимается запеченный свет и sun в текстуре, то согласен. Но хеми при этом нужно оставлять. Отключение запечки света и sun было сделано K.D. через ключи запуска, если не ошибаюсь. 2. Уже отказались. Ещё до релиза ТЧ. 3. Запеченка от хемисферы будет выглядеть убого в местах, где сетка не плотная. Надо будет делать сетку плотнее по всей не implicit геометрии. Кто этим будет заниматься? К тому же, есть различия при вертексном запекании и запекании в текстуру, из-за чего могут возникать косяки с затенениями на геометрии с вертексным освещением. 4. Качество сильно в минус. А значит, не вариант. 5,7,8. В этом нет смысла, потому что картинка становится хуже, а значит это не оптимизация как таковая, а лишь попытка сократить себе время компиляции любыми способами. Таким макаром можно выпилить расчет порталов и секторов. Компиляция же быстрее будет, хоть игроки и будут страдать. 6. Это всё приблизительная подгонка картинки, которая проблему не решит. SSAO не вернет того глобального затенения, потому что он для этого не предназначен. Аналогично с консольными командами. Рендерить чцену и получать zbuffer можно уже очень давно, однако поиск по запросам типа "lightmap calculation with gpu" ничего толкового мне не выдаёт, как будто никто даже не пытался такое воплотить никогда. В чём смертельный недостаток такого метода? Вроде же должно работать. Не так много людей работают с компиляторами и гпу, поэтому и не пробовали. Даже нормально распоточить компилятор мало кто пробовал, что уж о гпу говорить. Если рассматривать расчет на гпу, то надо учитывать ньюансы в виде теряющейся энергии света и "прозрачности" материалов (которая в виде параметра у компил шейдера). Может при расчете на гпу тут могут вылезти проблемы и как итог - не совсем верный результат, но это надо пробовать и смотреть. abramcumner, не можешь расписать как происходит просчет лайтмапов в билдах до 1537? Те что без смены погоды. Там потрясающе красивая графика получается К сентябрю 2003 года было сделано много правок по переходу на сменную погоду. Под это дело правились и движок, и компилятор, и шейдеры. К тому времени ряд переменных был вынесен из настроек сцены в константы компилятора и благополучно забыты. Также переменные, которые раньше были выставлены в материалах, перекочевали в параметры погоды (возможно с иным экспортом в шейдеры): Слишком много всего было задействовано и просто так это всё не вернуть. Считаю, что "ту красивую графику" можно получить изменяя текущие шейдеры и добавляя дополнительные параметры погоды для более тонкой настройки составляющих освещения, а не откатываясь в прошлый век. Сообщение отредактировал SkyLoader - 27.01.2021, 02:31 |
 
|
|
27.01.2021, 07:41
Сообщение
#32
|
|
Продвинутый геймер Репутация: 24 Группа: Участник Сообщений: 398 Награды: 4 Регистрация: 30.09.2015 |
SkyLoader, дело не только в компиляторе, но и в сдк. В сдк 2002 куча дополнительных настроек:
https://www.gameru.net/forum/index.php?s=&a...t&p=1628482 |
 
|
|
27.01.2021, 11:43
Сообщение
#33
|
|
Pro gamer
Почти Игроман Репутация: 72 Группа: Участник Сообщений: 622 Регистрация: 05.11.2017 |
В сдк 2002 куча дополнительных настроек: Которые потом вынесли aka захардкодили как константы в код самого компилятора) Скай всё правильно говорит. однако поиск по запросам типа "lightmap calculation with gpu" ничего толкового мне не выдаёт Плохо ищете, господа, плохо ищете: Сообщение отредактировал atanda - 27.01.2021, 11:40 |
 
|
|
27.01.2021, 15:33
Сообщение
#34
|
|
Босс Репутация: 257 Группа: Участник Сообщений: 4151 Награды: 4 Регистрация: 15.08.2008 |
Много буков. :cool: Моя теория по "оптимизации" такова: 1. Отказаться от лайтмапов. Компиляторы с лайтмапами оставить только для билдо-проектов. 2. Отказаться от статичного рендера (dx8). Использовать не воспрещается, но безлайтмапная карта на нем будет выглядеть УГ. 3. В объектах отказаться от шейдера "default". Только def_shaders\def_vertex, def_shaders\def_aref_v, def_shaders\def_trans_v и т.п. 4. Ставить у проектов качество hemi 0. (см. пункт 7) 5. Грамотно настроенный безлайтмапный компилятор компилирует навороченную карту в среднем за 15-20 минут. 6. Результирующая картинка в игре дотягивается шейдерными спецэффектами типа SSAO, контраста и подстройкой r2_sun_lumscale* командами. 7. Вот проверенный компилятор тов. Дизеля для ЧН-СДК (может подойдет и для ЗП) с кое-какими моими техническими оптимизациями. Из минусов, что он 32-битный, на сверхсложных проектах упрется в ограничения памяти. Также с картинкой были какие-то глюки, пока в настройках проекта не выставил Hemisphere quality в 0. Из плюсов: почти мгновенная перекомпиляция сложных карт, оперативное внедрение правок, изначальная совместимость карты с ТЧ/ЧН/ЗП. 8. Как пример сочетания такой карты и шейдерных эффектов см. Liberty City для ТЧ. https://www.gameru.net/forum/index.php?s=&a...t&p=1686665 Многабукав, а куда запеченный рассеяный свет денется? Он - единственное, что делает освещение сталкера не говном даже сегодня. Может кому-то и нравится жрать равномерно освещенные темные места, припуканые амбиент оклюжном по углам, но я не из таких товарищей. Для меня жизненно важны переходы освещенности между открытыми и закрытыми пространствами. Такого освещения растеризацие не добиться, только ГИ или ворлдспейс оклюжном - хоть с вокселями, хоть с рейтрейсингом. Сообщение отредактировал Supple Hope - 27.01.2021, 15:34 |
 
|
|
27.01.2021, 16:24
Сообщение
#35
|
|
. Репутация: 750 Группа: Участник Сообщений: 7072 Награды: 4 Регистрация: 30.07.2010 |
Надо поставить "Ночь, улица, фонарь, аптека, Бессмысленный и тусклый свет." и посмотреть, что там за тень получается. Не так много людей работают с компиляторами и гпу, поэтому и не пробовали. Даже нормально распоточить компилятор мало кто пробовал, что уж о гпу говорить. В общем понятно. Как я и думал испытания и только испытания дадут полную картину понимания что так или не так с этим методом, и пригоден ли он к применению. Правда внедрять его сразу в xrLC я думаю весьма трудоёмко, а если не заработает будет потом обидно, надо сначала на каком-нибудь легковесном самодельном движке обкатать. Вроде алгоритм перебора мировых точек соответствующих пикселям в лайтмапе не очень сложный, судя по всяким старинным статьям на эту тему. Если рассматривать расчет на гпу, то надо учитывать ньюансы в виде теряющейся энергии света и "прозрачности" материалов (которая в виде параметра у компил шейдера). Может при расчете на гпу тут могут вылезти проблемы и как итог - не совсем верный результат, но это надо пробовать и смотреть. Если бы xrLC ещё учитывал это всё. В обычной трассировке там вариантов только два - луч либо пролетает, либо не пролетает. А параметр translucency всего-лишь регулирует, скажем так, размазывание света между соседними вершинами. То есть как оно работает: берётся кусок геометрии с уже рассчитанным вершинным освещением, у него ищется самое максимальное значение освещённости, для каждого канала отдельно (красный, зелёный, синий, солнце, хеми). Потом перебираются все вершины и их цвет смешивается с максимальным в пропорции указанной этим самым параметром. Если 1.0 цвет у всех вершин будет максимальный, если 0.0 то останется везде оригинальный... И всего то навсего. однако поиск по запросам типа "lightmap calculation with gpu" ничего толкового мне не выдаёт Плохо ищете, господа, плохо ищете: Ну мне попадалась эта штука, вроде чё-та там какие-то лайтмапы считаются через GL, как работает толком не написано. Но где там именно запекание шадоумапы в лайтмап? |
 
|
|
27.01.2021, 21:20
Сообщение
#36
|
|
Игровой Бог Репутация: 1690 Группа: Участник Сообщений: 7021 Награды: 11 Регистрация: 22.02.2006 |
Но хеми при этом нужно оставлять. Продолжил эксперименты со сторонними x64 компиляторами. Есть прогресс. Раньше по образцу Дизелевского ставил hemi 0, и в игре перли глюки с тенями. Сейчас проверил с hemi 3 и со всякими параметрами отключающими лайтмапы. Глюков нет, хотя компиляция заняла 11 часов. ЗЫ: вроде где-то видел картинки пересобранных SDK, где в свойствах проекта можно было ставить то ли hemi, то ли jitter выше дозволенных 3. Это сильно улучшает картинку? |
 
|
|
28.01.2021, 00:18
Сообщение
#37
|
|
Почти Игрок Репутация: 0 Группа: Участник Сообщений: 20 Регистрация: 16.07.2015 |
Много буков. Моя теория по "оптимизации" такова: 1. Отказаться от лайтмапов. Компиляторы с лайтмапами оставить только для билдо-проектов. 2. Отказаться от статичного рендера (dx8). Использовать не воспрещается, но безлайтмапная карта на нем будет выглядеть УГ. 3. В объектах отказаться от шейдера "default". Только def_shaders\def_vertex, def_shaders\def_aref_v, def_shaders\def_trans_v и т.п. 4. Ставить у проектов качество hemi 0. (см. пункт 7) 5. Грамотно настроенный безлайтмапный компилятор компилирует навороченную карту в среднем за 15-20 минут. 6. Результирующая картинка в игре дотягивается шейдерными спецэффектами типа SSAO, контраста и подстройкой r2_sun_lumscale* командами. 7. Вот проверенный компилятор тов. Дизеля для ЧН-СДК (может подойдет и для ЗП) с кое-какими моими техническими оптимизациями. Из минусов, что он 32-битный, на сверхсложных проектах упрется в ограничения памяти. Также с картинкой были какие-то глюки, пока в настройках проекта не выставил Hemisphere quality в 0. Из плюсов: почти мгновенная перекомпиляция сложных карт, оперативное внедрение правок, изначальная совместимость карты с ТЧ/ЧН/ЗП. 8. Как пример сочетания такой карты и шейдерных эффектов см. Liberty City для ТЧ. https://www.gameru.net/forum/index.php?s=&a...t&p=1686665 1, 6) Ну вот если бы кто смог к рендеру добавить дополнительно карту АО, чтоб прям в СДК с ТХМкой создавалась, и работала как нужно - тогда да толк будет. Или вон - есть же решейды, которые успешо "иммитируют" эффект АО - нельзя его "выдернуть" и внедрить в Сталкер(шейдеры)? 3) Я вот пробовал экспериментрировать с одной локацией, одинаковые настройки компиляции, дефолтные шейдеры везде заменял на "def_shaders\def_vertex" - в результате на локации замечено неплохое падение производительности - может ли быть из-за этого? Ибо больше не на что грешить. 7) Вот хотелось бы на этот результат посмотреть на ЗП, на r4 - у вас там с Дизелем нет репозитория с правками по движку и компиляторам? Или у Дизеля как обычно - всё локально свалено в кучу без коммитов - разгребай как хочешь? А то имея репо - можно было бы "углубиться" в ваш "велосипед", перенести на ЗП, правки компиляторов перенести на исходники компиляторов х64, попробовать вылечить АО и т.д. и т.п. ... |
 
|
|
28.01.2021, 02:49
Сообщение
#38
|
|
Игровой Бог Репутация: 648 Группа: Участник Сообщений: 5354 Награды: 9 Регистрация: 24.09.2010 |
Явный даунгрейд графики в 1537 при почти той же погоде: Погода вообще сильно разная и солнце светит с разных сторон. Считаю, что "ту красивую графику" можно получить изменяя текущие шейдеры и добавляя дополнительные параметры погоды для более тонкой настройки составляющих освещения, а не откатываясь в прошлый век. +++ Скрупулезно настраивая каждый параметр в шейдерах и погоде, проверяя при этом ассеты (модели, текстуры) на предмет яркости, сглаживания и пр., можно добиться идентичности если не 100%, то хотя бы сильно близко к этому. Тем более насколько я помню, основные вопросы были или к яркости террейна, или к яркости деревьев. Впрочем, я ни разу не видел конкретно сформулированный список претензий к р1 на тему несоответствия "камблю"-картинке. В основном в тред приходит условный Сержи, говорит что всё говно и уходит Сообщение отредактировал RayTwitty - 28.01.2021, 02:52 -------------------- |
 
|
|
28.01.2021, 10:23
Сообщение
#39
|
|
Игровой Бог Репутация: 1690 Группа: Участник Сообщений: 7021 Награды: 11 Регистрация: 22.02.2006 |
Ну вот если бы кто смог к рендеру добавить дополнительно карту АО, чтоб прям в СДК с ТХМкой создавалась, У компиляторов есть -gi. Но пока не знаю, как на безлайтмапную r2 влияет. Сейчас как раз компилю.Или вон - есть же решейды, которые успешо "иммитируют" эффект АО - нельзя его "выдернуть" и внедрить в Сталкер(шейдеры)? Наверно можно. Но нужно время на изучение. И взять "вменяемую" основу. Будет странно наворачивать сторонние эффекты на ванильный синюшно-мыльный r2 ТЧ. В сборке Либертисити я постарался шейдерами и смоллскаями закрыть изначальные косяки старого движка, и уже на эту систему врапперы-решейды в будущем ставить будет интереснее.замечено неплохое падение производительности - может ли быть из-за этого? Ибо больше не на что грешить ХЗ. Но компили всегда с -noise, будет красивее и быстрее.7) Вот хотелось бы на этот результат посмотреть на ЗП, на r4 - у вас там с Дизелем нет репозитория с правками по движку и компиляторам? Или у Дизеля как обычно - всё локально свалено в кучу без коммитов - разгребай как хочешь? А то имея репо - можно было бы "углубиться" в ваш "велосипед", перенести на ЗП, правки компиляторов перенести на исходники компиляторов х64, попробовать вылечить АО и т.д. и т.п. ... Лично я из творчества тов. Дизеля почерпнул саму идею безлайтмапности. Плюс его компиляторы изначально x32 и сверхсложную геометрию не тянут. Сейчас проверяю/перехожу на x64 компиляторы "borscht". Осталось проверить влияние -gi и окончательно настроить батники на отключение лайтмапов. Так что, репо наверно уже не нужно. А ЗП в плане моддинга, тема спорная и сложная. Пока есть другие дела, держусь подальше.
|
 
|
|
28.01.2021, 18:21
Сообщение
#40
|
|
Игровой Бог Репутация: 1690 Группа: Участник Сообщений: 7021 Награды: 11 Регистрация: 22.02.2006 |
Осталось проверить влияние -gi Проверил, не влияет. проверяю/перехожу на x64 компиляторы "borscht". Пока из проблем: при hemi 0 артефакты. При hemi 3 местами слишком темные тени на геометрии, частично лечатся повышением r2_sun_lumscale_amb, но по качеству до Дизелевского не дотягивает. Буду проверять с hemi 1. |
 
|
|
Текстовая версия | Сейчас: 04.05.2024, 10:50 |