Directional-hemispherical reflection

最終更新日26 Apr 2017 05:24

(1)
\begin{equation} R(l) \end{equation}
  • $l$…光の方向ベクトル
  • 出力結果…色 RGB値

方向$l$から来た光がどのぐらい反射されるかを示す関数。
反射する方向は問わない。
つまり、光を当てたらどのぐらいのエナジーロスがあるかどうかを測ったもの。
計算結果は0-1の値をとる。

  • $R(l) = (0,0,0)$….光が全部吸収された。黒
  • $R(l) = (1,1,1)$….光が全部反射された。白

BRDFとの関係式

(2)
\begin{align} R(l) = \int_\Omega f(l,v) cos\theta_o d \omega_o \end{align}
  • $\Omega$….半球分を積分することを示している。半球全部の方向という意味。半球の中心は面の法線n
  • $f(l,v)$BRDF
  • $\theta_o$…法線nとビューベクトルvのなす角度

半球分を積分、つまり反射(outgoing)する可能性のある全部の角度を積分した結果ということ。

BRDFエネルギー保存を満たすには$R(l) \leq 1$であればok!

ランバート反射の場合

もっともシンプルなモデルであるランバート反射の場合、式はこうなる

(3)
\begin{align} R(l) = \pi f(l,v) \end{align}
Bibliography

shading-equation


files

サポートサイト Wikidot.com shading-equation