Phongのモデル

最終更新日12 May 2017 03:19

phong.png

鏡面反射をモデル化したもの。

(1)
\begin{align} I=W(\alpha)I_i cos^n \gamma \\ =W(\alpha)I_i(\vec{r}\cdot \vec{v})^n \end{align}
  • $I$…鏡面反射光の強さ
  • $I_i$…入射光の強さ
  • $\gamma$…視点方向と正反射方向のなす角度
  • $\vec{r}$…正反射ベクトル。ここでハーフベクトルを使うのはblinnのモデル
  • $\vec{v}$…視線方向ベクトル
  • $W(\alpha)$….鏡面反射率。入射角$\alpha$の関数
  • $n$…ハイライトの特性を制御するパラメータ nを大きくすると鈍い反射から鋭い反射になる。

パラメータn

ハイライトの強さを制御するパラメータを変更するとどうなるのか?
図はBlenderでPhongマテリアルのパラメータHardnessの値を変更して作りました。
n.png

PhongのモデルのBRDF

(2)
\begin{align} \frac{c_{spec}\overline{cos}^m\alpha_r}{\pi\overline{cos}\theta_i} \end{align}
  • $\alpha_r$…正反射方向ベクトルrとライトベクトルlのなす角度
  • $m$…ハイライトの特性を制御するパラメータ
  • $c_{spec}$…スペキュラカラー

PhongのBRDFを正規化するための係数

(3)
\begin{align} \frac{m+2}{2} \end{align}

shadingmodel


ファイル

サポートサイト Wikidot.com shadingmodel