GPU Global Illumination (фейковый) (комментарии)
Это сообщение сгенерировано автоматически.
Вот еще один способ фейкового Indirect Illumination
http://lwengine.net.ru/article/DirectX_10/ssii_directx10
> В этой статье будет больше теории, чем практики, хотя и псевдокода есть немного.
Как-то незаметно что теории больше :)
scorch
> Вот еще один способ фейкового Indirect Illumination
> http://lwengine.net.ru/article/DirectX_10/ssii_directx10
Этот метод будет быстрее но не качественее,да и к томуже это не совсем GI,а скарее Color Bleeding...
Phoenics
> > В этой статье будет больше теории, чем практики, хотя и псевдокода есть
> > немного.
> Как-то незаметно что теории больше :)
Ну да,есть немного.
void addEmiter(IndirectLight* emiter ){ removeEmiter( emiter);
убило :)
Демки не хватает. И быстро пробежав по статье я не увидел алгоритма трассировки. Как она осуществляется? Походу у тебя все расчеты на процессоре выполняются
Sergio
> void addEmiter( IndirectLight* emiter ){
> removeEmiter(emiter);
>
> убило :)
Хах,чтоб один и тотже в список не попал.
Sergio
> Демки не хватает.
Собираюсь сделать у себя в движке,демка будет.
Sergio
> И быстро пробежав по статье я не увидел алгоритма трассировки. Как она
> осуществляется? Походу у тебя все расчеты на процессоре выполняются
>, а фейк весь в том, что мы всё-таки будем использовать и CPU – для трассировки «фотонов».
Клево, статья про то что можно рассчитать лайтмап и наложить его в виде текстуры - абалдеть!
А если по делу, то лично из моего опыта без final gathering фотонные карты делать не имеет смысла - будет сплошной шум и артефакты в виде потемнения краев.
И вообще ничего по сути не рассказано о фотонных картах и наложении лайтмапа.
Взять хотя бы вот такой вопрос - как для произвольной полигональной модели сгенерировать текстурные коордлинаты лайтмапа? Вопрос нетривиальный и было бы интересно рассмотреть такой алгоритм.
Мое ИМХО - такая стаья нужна, но она должна быть намного более подробной, а то по сути ничего и не рассказал.
FROL
> Взять хотя бы вот такой вопрос - как для произвольной полигональной модели
> сгенерировать текстурные коордлинаты лайтмапа? Вопрос нетривиальный и было бы
> интересно рассмотреть такой алгоритм.
Расчитать в любом пакете 3д моделирования,не?
FROL
> Мое ИМХО - такая стаья нужна, но она должна быть намного более подробной, а то
> по сути ничего и не рассказал.
Я сам алгоритм трассировки фотонов расказал,на доступном языке,хало\затенёных краёв не будет так как в итоге мы просто прибовляем к направленому освещению,не направленое.
3dmax -> omni + GI (mental ray хз) -> render to texture
на выходе упакованные лайтмэпы в одну текстуру и просчитанные текстурные координаты для них.
оно риалтайм?
CyberManiac
> оно риалтайм?
Всё зависит от на сколько быстро будет выполнятся трассировка фотонов и как часто.
> Вместо текстур мы будет использовать Deferred Lighting и так называемые Virtual Point Light (Point Light не имеющий радиуса).
Я может чегото путаю, но отсутствие радиуса это Point Light, а наличие оного это Omni Light...
ну а приемлевого риалтайм просчёта можно доиться? чтобы выглядело приятно. и какой фрэймрэйт выдаст?
CyberManiac,если использовать для трассировки лучей всякие BIH\AABB Tree и SIMD и обнавлять источники не так часто то реалтайм можно добится и впринцепе нормальный. Насчёт фреймрейта,затрудняю пока отчетить так-как до реализации ещё не дошло дело.
Из комментариев в коде:
> Добовление
> Обнавление
> обнавлять
> придётя (*)
> ни есть
> ниразу не обнавлялся
> Прибовляем
> Трасировка
> персёкся (*)
> тикущий
> матереала
> Трасируем
> направленое (*)
Если помеченное звёздочками ещё можно списать на опечатки, то остальное... :/
Тема в архиве.