Войти
ПрограммированиеФорумГрафика

Быстрая реализация модели освещения Кука-Торренса с использованием GLSL (комментарии) (3 стр)

Страницы: 1 2 3 4 Следующая »
#30
22:26, 15 июня 2009

Sergio666
> Sergio666
> http://en.wikipedia.org/wiki/Fresnel_equations
>
> Note that this statement is only true when the refractive indexes of both
> materials are real numbers, as is the case for materials like air and glass.
> For materials that absorb light, like metals and semiconductors, n is complex,
> and Rp does not generally go to zero.

www.graphics.cornell.edu/~phil/GI/TotalCompendium.pdf


eta может быть комплексной для проводников, там считаются квадраты реальной и мнимой части для френеля


#31
22:34, 15 июня 2009

Ну по идее правильно - модуль комплексного числа

#32
23:14, 15 июня 2009

Sergio666

Смотри, нарыл вот что

float fresnel(vec3 i, vec3 n, float eta)
{
    float c1;
    float cs2;
    float tflag;
    vec3 t;
   
    c1 = dot(-i,n);
    cs2 = 1.0 - eta * eta * (1.0 - c1 * c1);
    tflag = (cs2 >= 0.0) ? 1.0 : 0.0;
    t = tflag * (((eta * c1 - sqrt(cs2)) * n) + eta * i);

    float ndott;
    float cosr_div_cosi; // реальная
    float cosi_div_cosr; // мнимая
    float fs;
    float fp;
    float kr;

    ndott = dot(-n,t);
    cosr_div_cosi = ndott / c1;
    cosi_div_cosr = c1 / ndott;
    fs = (cosr_div_cosi - eta) / (cosr_div_cosi + eta);
    fs = fs * fs;
    fp = (cosi_div_cosr - eta) / (cosi_div_cosr + eta);
    fp = fp * fp;
    kr = 0.5 * (fs + fp);
   
    return tflag*kr + (1.0 - tflag);
}

#33
23:31, 15 июня 2009

Sergio666

http://www.luxpop.com

http://www.luxpop.com/RefractiveIndexList.html

задаются комлексными (n, k )

#34
23:37, 15 июня 2009

innuendo
> http://www.luxpop.com
Ничего себе! Серъезный подход :)

#35
23:39, 15 июня 2009

Sergio666
Для металлов будет внутренний refraction вектор. Помнишь спрашивал как честно считать Fresnel для Кука ? Ну вот ... :)

#36
7:35, 16 июня 2009

Sergio666
Спасибо за статью, как обычно Cool! :)

#37
22:40, 17 июня 2009

Sergio666
Ну как там новый Fresnel ?

#38
2:31, 7 июля 2009

спс за статью, сегодня реализовал. Добавил бамп и спекулар - сказка=)

#39
14:53, 7 июля 2009

Ruba
Ну так скрин давай! :)

#40
11:30, 11 авг. 2009

Кстати, Кук используется как минимум в Crysis и Halo3


http://ati.amd.com/developer/SIGGRAPH08/Chapter01-Chen-Lighting_a… _of_Halo3.pdf

там есть ряд оптимизаций для Кука

#41
20:59, 11 авг. 2009

innuendo
Спасибо, полезная ссылка

Прошло более 5 лет
#42
16:16, 7 апр. 2015

Sergio
Большое спасибо за статью , буду реализовывать )

#43
18:10, 7 апр. 2015

Хех по-хорошему, надо бы поправить, конечно, это :)

#44
20:47, 7 апр. 2015

Sergio
> Хех по-хорошему, надо бы поправить, конечно, это :)
А что там не так? В статье есть ошибки ?

Страницы: 1 2 3 4 Следующая »
ПрограммированиеФорумГрафика

Тема в архиве.