LOG

ガウシアン球によるフレネル反射率の近似

Schlick によるフレネル反射率の近似の式よりも GPU の処理コストが少ないらしい・・・

FSG(v,h) = C + (1 - C)e^-6h・v
// C :光が垂直に入射するときのフレネル反射率 F(0°)(スペキュラリフレクタンス)
// h :法線ベクトル
// v :視線ベクトル
// e :ネイピア数

FSG(v,h) = C + (1 - C) * Math.pow(Math.E,(-6 * (h[0] * v[0] + h[1] * v[1])))

非金属のフレネル反射率(R = G = B)

物質F(0°) (Linear)F(0°) (sRBG)
Water0.02,0.02,0.020.15,0.15,0.15
Plastic / Glass(low)0.03,0.03,0.030.21,0.21,0.21
Plastic high0.05,0.05,0.050.24,0.24,0.24
Glass(high) / Ruby0.08,0.08,0.080.31,0.31,0.31
Diamond0.17,0.17,0.170.45,0.45,0.45

金属のフレネル反射率

反射率が色の波長によって異なるのでRGBで別の値になる。

金属F(0°) (Linear)F(0°) (sRBG)
Gold1.00,0.71,0.291.00,0.86,0.57
Silver0.95,0.93,0.880.98,0.97,0.95
Copper0.95,0.64,0.540.98,0.82,0.76
Iron0.56,0.57,0.580.77,0.78,0.78
Aluminum0.91,0.92,0.920.96,0.96,0.97

参考サイト