Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Графика, рендер, шейдеры
GAMEINATOR forums > S.T.A.L.K.E.R. > Мастерская: создание модов для S.T.A.L.K.E.R.
Страницы: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91
RayTwitty
Цитата(sergy172 @ 29.05.2015, 18:30) *
Лайтмапы генерятся и обрабатываются иначе.

Откуда инфа? Смотрел двиг?
sergy172
Продублирую пожалуй...
Как насчёт, заменить у костров на р1, пререндерные источники света на сферические динамические, такие как на артефактах, полтергейсте или гранатомёте например?
А может подойдёт и костровый от р2 с готовой анимацией мерцания или хотя бы сама анимация.
п.с. Перекомпиляция, понятное дело.
cjayho
QUOTE (sergy172 @ 01.06.2015, 21:59) *
Продублирую пожалуй...
Как насчёт, заменить у костров на р1, пререндерные источники света на сферические динамические, такие как на артефактах, полтергейсте или гранатомёте например?
А может подойдёт и костровый от р2 с готовой анимацией мерцания или хотя бы сама анимация.
п.с. Перекомпиляция, понятное дело.


А что, там разве прекомпилированные источники света? Я когда-то делал скрипт отключения всех hanging_lamp на раене , сияние вокруг костра исправно гасло, и на р1 тоже. По-моему туда достаточно прикрутить анимации через spawn и все.
K.D.
Цитата(cjayho @ 28.05.2015, 21:35) *
Подсмотрел в демке unreal engine 4 пару эффектов - виньетирование и хроматическую аберрацию.

Если интересно - посмотри в ОГСЕ, там это все есть. Правда, только со включенным DOF.

Цитата(sergy172 @ 29.05.2015, 17:14) *
новая технология теней PCSS

Ей сто лет завтра в обед будет.
RayTwitty
Цитата(sergy172 @ 01.06.2015, 21:59) *
Как насчёт, заменить у костров на р1, пререндерные источники света на сферические динамические

Вопрос в тему СДК или ковырялок - убирается статический источник света, активируется динамический у костра. Движок\шейдеры править не нужно.
sergy172
Цитата(Shadows @ 03.06.2015, 23:51) *
убирается статический источник света, активируется динамический
Предназначенный для р1 или р2 или в сдк они одинаковые?
hi_flyer
Цитата(sergy172 @ 04.06.2015, 07:07) *
Цитата(Shadows @ 03.06.2015, 23:51) *
убирается статический источник света, активируется динамический
Предназначенный для р1 или р2 или в сдк они одинаковые?


Можно выбрать какой нужно.
sergy172
Цитата(hi_flyer @ 04.06.2015, 20:33) *
Можно выбрать какой нужно.
Я же о другом спрашивал.
Очевидно, что нет динамического источника для р1 с такой же анимацией для костра, как у дин. ист. для р2, иначе его бы давно кто то использовал?
hi_flyer
Цитата(sergy172 @ 05.06.2015, 03:04) *
нет динамического источника для р1 с такой же анимацией для костра, как у дин. ист. для р2


Для р1 не проблема также назначить. Просто видимо она на р1 и р2 по разному отображается.
RayTwitty
Цитата(sergy172 @ 04.06.2015, 21:04) *
Очевидно, что нет динамического источника для р1 с такой же анимацией для костра, как у дин. ист. для р2, иначе его бы давно кто то использовал?

Поставь флажок "R1 allow" в свойствах дин. светильника и всего делов.
sergy172
Цитата(Shadows @ 04.06.2015, 21:31) *
"R1 allow"
Какое отношение это имеет к
Цитата(sergy172 @ 01.06.2015, 21:59) *
Как насчёт, заменить у костров на р1, пререндерные источники света на сферические динамические, такие как на артефактах, полтергейсте или гранатомёте например?
А может подойдёт и костровый от р2 с готовой анимацией мерцания или хотя бы сама анимация.
п.с. Перекомпиляция, понятное дело.
?


Ясно же, что моё предложение связано с синхронизацией впечатления от костра на р1 и р2-3-5..., и возможности их тушить и зажигать.
Ронин
Мда, гуру тотсталкирского графония не знают азов.. Как вы вообще что-то пытаетесь делать?
Билдоман
Цитата(Scarabay @ 04.06.2015, 22:18) *
Мда, гуру тотсталкирского графония не знают азов.. Как вы вообще что-то пытаетесь делать?


Оффтоп... шел 8-й год. Ничего не изменилось laugh.gif
RayTwitty
Цитата(sergy172 @ 04.06.2015, 22:09) *
Какое отношение это имеет к

Самое что ни на есть прямое. Впрочем, выше уже намекнули.
macron
Цитата(sergy172 @ 29.05.2015, 17:14) *
Не надо пожалуйста делать демонстрационные скриншоты против солнца.
Из-за заливающих всё пространство фларов, просто ничего не понятно.
Я вообще-то специально делал с понтовыми фларами. Они же тоже часть картинки, в том числе скрывают недостатки ТЧ-r1-рендера.

В качестве бредовой идеи предлагаю перенести на r1 эффекты типа всяких fade-адаптаций зрения.

В качестве более серьёзной идеи предлагаю на r2 добавить/усилить fade-адаптации. На движке ARMA2 в свое время понравились эффекты затенения картинки/адаптаций зрения в зависимости от движения/направления взгляда.
sergy172
Цитата(Shadows @ 04.06.2015, 23:01) *
Самое что ни на есть прямое. Впрочем, выше уже намекнули.
А ведь как просто было бы ответить прямым текстом на пост №1858, избежав полторы страницы бессодержательного бреда или не дающей понимания воды.

Можно было ответить коротко и по делу.

Обратите внимание, я очень часто стараюсь излагать проблему таким образом, что бы она не ускользала от понимания человека, совершенно не разбирающегося в вопросе.
Чего и всем советую.

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

Цитата(macron @ 04.06.2015, 23:56) *
На движке ARMA2 в свое время понравились эффекты затенения картинки/адаптаций зрения в зависимости от движения/направления взгляда.
Работающие как на самой дешевой телефонной видеокамере.
Ни художественной ценности ни реализма то мерзотное извращение не несло, и в добавок сука, не отключалось!
RayTwitty
Цитата(sergy172 @ 05.06.2015, 00:02) *
Можно было ответить коротко и по делу.

1.
Цитата(Shadows @ 04.06.2015, 21:31) *
Поставь флажок "R1 allow" в свойствах дин. светильника

2. убери статический источник света
3. скомпиль
3. ???
4. PROFIT!
macron
Цитата(sergy172 @ 05.06.2015, 01:02) *
Ни художественной ценности ни реализма то мерзотное извращение не несло, и в добавок сука, не отключалось!

То же самое можно сказать и про ТЧ-рендеры. laugh.gif
sergy172
Цитата(macron @ 05.06.2015, 02:45) *
То же самое можно сказать и про ТЧ-рендеры.

О... ХДР в ТЧ-ЗП по сравнению с Армой, ещё куда ни шло.
Цитата(Shadows @ 04.06.2015, 21:31) *
Поставь флажок "R1 allow"

Интересно, почему я не видел ни одного видео с таким костром р1?
Неужели никто этого до сих пор не делал?
RayTwitty
Цитата(sergy172 @ 05.06.2015, 10:43) *
Интересно, почему я не видел ни одного видео с таким костром р1?

Очевидно, потому что р1-рендер интересен чуть более чем никому.
macron
Цитата(sergy172 @ 05.06.2015, 11:43) *
Интересно, почему я не видел ни одного видео с таким костром р1?

https://www.youtube.com/watch?v=eKYEqQk3ja8
cjayho
QUOTE (macron @ 04.06.2015, 23:56) *
QUOTE (sergy172 @ 29.05.2015, 17:14) *
Не надо пожалуйста делать демонстрационные скриншоты против солнца.
Из-за заливающих всё пространство фларов, просто ничего не понятно.
Я вообще-то специально делал с понтовыми фларами. Они же тоже часть картинки, в том числе скрывают недостатки ТЧ-r1-рендера.

В качестве бредовой идеи предлагаю перенести на r1 эффекты типа всяких fade-адаптаций зрения.

В качестве более серьёзной идеи предлагаю на r2 добавить/усилить fade-адаптации. На движке ARMA2 в свое время понравились эффекты затенения картинки/адаптаций зрения в зависимости от движения/направления взгляда.


Эти постпроцессные эффекты в двигле придется создавать с нуля в р1 рендере.
macron
Цитата(cjayho @ 06.06.2015, 12:13) *
Эти постпроцессные эффекты в двигле придется создавать с нуля в р1 рендере.

Тогда заодно добавьте "тени от облаков", как на r2. Там вроде тоже без движка не обойтись.
cjayho
QUOTE (macron @ 06.06.2015, 11:44) *
QUOTE (cjayho @ 06.06.2015, 12:13) *
Эти постпроцессные эффекты в двигле придется создавать с нуля в р1 рендере.

Тогда заодно добавьте "тени от облаков", как на r2. Там вроде тоже без движка не обойтись.


Неужели кто-то, находясь в своем уме, и живя в 2015 году, будет пилить р1?
А тем, кто рассказывает о том, что р1 теплее и ламповее, советую купить видяху которая тянет р2.

Зы, в свободное от работы время немного ковырял лостальфовский р2, на предмет блума и прочих эффектов, убрал пересвеченность неба, снизил блум до приемлемых значений, настроил тонмаппинг, добавил эффекты виньетирования и хроматической аберрации.

screens

          
RayTwitty
cjayho, всё-таки блюма надо ещё немного убавить либо снизить значение r2_sun_lumscale (ну или в погоде поправить параметр).
NL-Vincenz
Хз.. R1 мне больше нравиться чем R2. Хоть и карточка не из слабых.
zibit_93
В реальности иногда солнце стает в такую позицию, что кажется будто оно увеличилось в размерах вдвое, и при этом очень ярко светит и просвечивает сквозь деревья, как на фото. В сталкере такое реально сделать?
cjayho
QUOTE (zibit_93 @ 14.07.2015, 10:47) *
В реальности иногда солнце стает в такую позицию, что кажется будто оно увеличилось в размерах вдвое, и при этом очень ярко светит и просвечивает сквозь деревья, как на фото. В сталкере такое реально сделать?


Думаю да
Samaritan
Цитата(cjayho @ 14.07.2015, 23:19) *
Думаю да

У тебя в твооём шейдерпаке есть фича - "шейдерное солнце".
Можно было бы задействовать её для этого эффекта?
RayTwitty
Можно просто флар для нужного часа поставить другой.
RayTwitty
QUOTE (sergy172 @ 29.07.2013, 14:28) *
В который уж раз очень прошу поковырять Баг с отсутствием плавной смены текстур солнца и луны.
Параметры движок берёт из flares.ltx
blend_time = 10 ;(сек) скорость перехода одной текстуры в другую, например из flares = flares_sun_rise во flares = flares_default10
blend_rise_time = 300 ;(сек) скорость появления, если в предыдущей погодной секции был пустой flares =
blend_down_time = 300 ;(сек) скорость исчезновения, если в последующей погодной секции пустой flares =

Поковырял.

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

Билд 1537

Смотреть с 1:24

Теперь немного конкретики.
Отрисовкой текущего флара занимается класс CLensFlare, который рисует флар по индексу, переданному из CEnvironment.
CODE
int l_id                            =    (current_weight<0.5f)?Current[0]->lens_flare_id:Current[1]->lens_flare_id;
eff_LensFlare->OnFrame                (l_id);

lens_flare_id - это айди созданного экземпляра класса CLensFlareDescriptor, а каждый экземпляр содержит себе настройки одной секции флара.
Current[0] и Current[1] - как я понял, текущая и следующая погода (CEnvDescriptor).

Внутри CLensFlare::OnFrame работа всегда идет только с одной секцией флара
CODE
CLensFlareDescriptor* desc = (id==-1)?0:&m_Palette[id];

У класса есть 4 состояния lfsNone, lfsIdle, lfsShow и lfsHide. По названиям, думаю можно догадаться, за что отвечает каждый стейт.

Алгоритм переключения флара - если раньше флара не было (текущий стейт - lfsNone) и есть новый (который передали по индексу) - работаем с ним, включается стейт lfsShow. После чего, когда m_StateBlend достиг единицы (со скоростью blend_rise_time для этого флара из его конфига), стейт переключается в lfsIdle и висит в этом состоянии, пока не передадут флар из другого часа. После того, как это произошло, стейт переключается в lfsHide и уже со скоростью blend_down_time из конфига, текущий флар будет исчезать. Когда m_StateBlend достиг нуля, новый переданный флар становится основным, включается стейт lfsShow и всё прокручивается по-новой.

В общем, для реализации "плавных фларов" надо править класс CLensFlare, в котором управлять двумя текущими фларами, меняя их цвет (прозрачность). Правка достаточно основательная, так что шансы на то, что её могли раньше (без исходников) сделать почти равны нулю...

З.Ы. параметр blend_time во всех 3 играх даже не читается, разве что в ЗП вроде как начали делать какую движуху по этой теме, но похоже забили - остался пустой класс без реализации...

З.Ы2. ну а вообще если подумать, реально как-то стремно выходит - одно солнце сначала "исчезает", а потом другое начинает "появляться" biggrin.gif
cjayho
Вообще я думаю для солнца достаточно параметров диаметр, высота, rotation и цвет (с альфой). Смысл для солнца тянуть лишнюю текстуру, вместо того чтобы сгенерить теми же шейдерами кругляшок, я не вижу. Мы же, я думаю, не собираемся делать в игре солнечное затмение. В случае динамически генерируемого солнца мы сможем менять его цвет, диаметр и так далее на лету, вместо того чтобы делать crossfade текстуре.
sergy172
cjayho, а как ты в конечном итоге собираешься стандартными командами в погодном и флар конфигах, объяснять движку как поменять кругляшок с резкими краями диаметром "1" на кругляшок с размытыми градиентными краями диаметром "10", и степень размытости краёв?
И это только с простой круглой формой.
Не проще ли оставить как есть, текстурную реализацию?

Цитата(Shadows @ 13.08.2015, 04:08) *
Поковырял.

Исходники или скомпиленый?
И если скомпиленый, то может попробуешь найти нужные CLensFlare и CEnvironment например в 1580?
Не думаю, что названия с тех пор сильно поменялись.
hrebet1
Поделился, как то, со мной приятель с АМК-форума следующей правкой:

http://rghost.ru/8mwvB49Ph

Видео сделал ещё на старом железе (11-го года) на той ещё Солянке:

https://www.youtube.com/watch?v=7lS9vlFIE-4

Сейчас установил эту же правку на ОП-2 -- работает идеально, графика та же, что и в видео..
sergy172
hrebet1, а в чём "доработка графики" то?
Судя по видео наоборот, явное и сильное её ухудшение.
Да и её не в мастерскую, а в готовые моды следовало выкладывать.
RayTwitty
QUOTE (sergy172 @ 13.08.2015, 12:58) *
Исходники или скомпиленый?

Исходники 7 патча. Билдовских исходников нет, как и отладочных патчей нужных билдов. Т.е. алгоритм надо переписывать самому.

cjayho, ты видимо не понял, что тут имелось ввиду... А по поводу параметров - все это итак есть, ну за исключением прозрачности солнца - было бы неплохо имитировать "солнце за облаками", добавив параметр source_opacity например.

А цвет солнца всегда равен цвету света, который настраивается в конфиге часа.
Cartoteka
Цитата(MrObs @ 04.05.2015, 21:43) *
По сему то и продолжаются поиски "того", и по сей день.


dPlayer
Цитата(sergy172 @ 13.08.2015, 16:22) *
Судя по видео наоборот, явное и сильное её ухудшение.

Это ты про работу Найтвиза? Ну извини, чувак просто хотел разнообразить вечно пасмурную АМКшную погоду а не годами трепаться на форуме не сделав ничего.
Shoкer
Shadows, вообще у флара солнца вроде свой шейдер же есть, можно просто скидывать туда текстуру флара от текущего часа и текстуру флара следующего часа и по желанию миксовать их, как это сделано с небом в шейдере воды water.ps. Шейдер только придётся с нуля написать (на его основе) и в движке добавить поднобно экспорту скайкубов - экспорт фларов в шейдера.
RayTwitty
Shoкer, помнится уже кто-то делал шейдерное солнце, но там был какой-то баг... Впрочем, не вижу проблем поправить текущую схему, там по сути только две функции существенно нужно изменить - on_frame, да render. Правда пока как я себе вижу, для плавного перехода вообще никакие параметры из конфига будут не нужны - плавность рассчитывается из времени до следующего часа, которое можно получить вроде бы в CEnvDescriptor и передать куда надо.
cjayho
QUOTE (Shadows @ 14.08.2015, 15:39) *
Shoкer, помнится уже кто-то делал шейдерное солнце, но там был какой-то баг... Впрочем, не вижу проблем поправить текущую схему, там по сути только две функции существенно нужно изменить - on_frame, да render. Правда пока как я себе вижу, для плавного перехода вообще никакие параметры из конфига будут не нужны - плавность рассчитывается из времени до следующего часа, которое можно получить вроде бы в CEnvDescriptor и передать куда надо.


Я и делал. И баг был, но не с самим солнцем, а что двиг не хотел рисовать градиент пока игру не свернуть-развернуть.
SkyLoader
Насмотревшись демок с дофом и боке, решил сделать гауссовский доф. Скриншоты слева - gather dof (оригинальный), справа - gaussian dof.



Gaussian dof уступает gather dof'у по качеству, но зато кушает меньше фпс.
cjayho
QUOTE (SkyLoader @ 07.09.2015, 16:06) *
Насмотревшись демок с дофом и боке, решил сделать гауссовский доф. Скриншоты слева - gather dof (оригинальный), справа - gaussian dof.



Gaussian dof уступает gather dof'у по качеству, но зато кушает меньше фпс.


Если нужно реально увеличить фпс, проще закомментарить половину выборок в ДоФ. Через одну - первую, третью, пятую и так далее. На качество картинки если и влияет, то я не заметил. Зато фпс заметно улучшается.

Ps. из такого (например)

CODE
static const float2 blurcfg [12] = /* x, y in pixels */
{
        float2( -0.326212f, -0.405810f ),
        float2( -0.840144f, -0.073580f ),
        float2( -0.695914f,  0.457137f ),
        float2( -0.203345f,  0.620716f ),
        float2(  0.962340f, -0.194983f ),
        float2(  0.473434f, -0.480026f ),
        float2(  0.519456f,  0.767022f ),
        float2(  0.185461f, -0.893124f ),
        float2(  0.507431f,  0.064425f ),
        float2(  0.896420f,  0.412458f ),
        float2( -0.321940f, -0.932615f ),
        float2( -0.791559f, -0.597710f ),
};


делаем

CODE
static const float2 blurcfg [6] = /* x, y in pixels */
{
//        float2( -0.326212f, -0.405810f ),
        float2( -0.840144f, -0.073580f ),
//        float2( -0.695914f,  0.457137f ),
        float2( -0.203345f,  0.620716f ),
//        float2(  0.962340f, -0.194983f ),
        float2(  0.473434f, -0.480026f ),
//        float2(  0.519456f,  0.767022f ),
        float2(  0.185461f, -0.893124f ),
//        float2(  0.507431f,  0.064425f ),
        float2(  0.896420f,  0.412458f ),
//        float2( -0.321940f, -0.932615f ),
        float2( -0.791559f, -0.597710f ),
};
Shoкer
Самый лучший DOF что я видел был в ENB Series для ТЧ, оригинальный ЧН\ЗП-шный порой создаёт ощущение "грязи".

На скриншотах лучше "левые" скрины (gather dof), потому что если на верхних скринах смотреть на двери\окна, а на нижних смотреть на лампу справа, то на гауссе чётко видна "сетчатая" структура дофа, он как будто иксами идёт. Хотя гауссовский очень хорошо смазывает стыки между объектами, но гораздо хуже смотрится на ярком фоне.

+ что мне очень нравилось в ENB дофе и играх вроде батлфилда 4-го, что там в доффе есть эффект бокэ (размытие и округление яркого света):
https://img-fotki.yandex.ru/get/6719/109877...a5aa2b_XXXL.jpg + сам по себе он гораздо плавнее и мягче смотрится.
http://ap-pro.ru/forum/79-10233-5
cjayho
QUOTE (Shoкer @ 09.09.2015, 18:32) *
Самый лучший DOF что я видел был в ENB Series для ТЧ, оригинальный ЧН\ЗП-шный порой создаёт ощущение "грязи".

На скриншотах лучше "левые" скрины (gather dof), потому что если на верхних скринах смотреть на двери\окна, а на нижних смотреть на лампу справа, то на гауссе чётко видна "сетчатая" структура дофа, он как будто иксами идёт. Хотя гауссовский очень хорошо смазывает стыки между объектами, но гораздо хуже смотрится на ярком фоне.

+ что мне очень нравилось в ENB дофе и играх вроде батлфилда 4-го, что там в доффе есть эффект бокэ (размытие и округление яркого света):
https://img-fotki.yandex.ru/get/6719/109877...a5aa2b_XXXL.jpg + сам по себе он гораздо плавнее и мягче смотрится.
http://ap-pro.ru/forum/79-10233-5


Да уж. Посмотрел скрины ENB - единственное что я смог выдавить с круглыми глазами - это "Охренеть!" o_O.gif.
Shoкer
Да, ENB очень красиво смотрится на скринах, но в движении обычно там всё похуже, а одни и те-же настройки могут не подходить для разного времени\погоды\локации.

В этой теме и до конца есть ещё скриншоты.
Cewolmis
красава
SkyLoader
Наконец-то нашел место, почему не бладмарки не появляются стопроцентно.
В WallmarksEngine.cpp в 421 строке закомментировать:
Код
            //if (ssa>=ssaCLIP){

Теперь они появляются в 95% случаях. rolleyes.gif Думаю, не надо пояснять, что 5% - это бладмарк просто не может правильно лечь на поверхность (стык фейсов, большой коллизийный шейп и тд.).
Тут я просто выставил r__bloodmark_ttl в единицу:

Тут лучше видно:
RayTwitty
SkyLoader, все пашет как надо smile.gif


Правда зеленуха получается, но это уже обсуждали...
hi_flyer
SkyLoader,
Здорово, спасибо!
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Форум IP.Board © 2001-2024 IPS, Inc.