w23 / xash3d-fwgs

Vulkan Ray Tracing fork of Xash3D FWGS engine. Intended to be merged into master at some point in the future.
164 stars 16 forks source link

rtx: sample emissive textures #237

Open w23 opened 3 years ago

w23 commented 3 years ago

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

Это сделать просто. Однако оно будет выглядеть криво, если текстура сильно неравномерная. Почему: мы семплируем поверхность однородно, и будем часто попадать в сильно разные части её текстуры. Исправить это крайне трудно.

Меня особенно это волнует в случае с additive режимом. Вот здесь есть прокручивающиеся текстуры в таком режиме https://www.the303.org/tutorials/gold_texture_p7.htm

Additive уже в каком-то смысле светят, но их вклад непропорционален -- к ним довольно криво делать next event estimation.

Было бы прикольно чтобы можно было задать свечение таким текстурам и только яркие участки светились. Но пока это просто хотелка и вопрос из ряда: насколько сложно?

В первом приближении несложно.

Originally posted by @0x4E69676874466F78 in https://github.com/w23/xash3d-fwgs/issues/136#issuecomment-951266001

0x4E69676874466F78 commented 3 years ago

Связано с масками отсюда https://github.com/w23/xash3d-fwgs/issues/145#issuecomment-972948610

0x4E69676874466F78 commented 1 year ago

Я думаю есть смысл:

w23 commented 1 year ago

Включать-выключать-настраивать такое можно после того, как оно будет как-то работать ;). Это можно сделать по-тупому по-простому, просто перемножением на цвет текстуры. Но я ожидаю, что будет поганенько. Кроме того, у нас сейчас студийные модели не умеют светить. Тоже надо думать, как делать.