鏡面反射光を含んだ反射光強度の求め方

この場合の反射光強度 I は,次式で求めることができる.ここで N および L は単位ベクトルである必要がある.また,R は反射光ベクトル,V は視線ベクトルである.

R = 2(N・L)N - L
rs = (-R・V/|V|)Ke
Is = rs Il
I = Ks Is + Kd Id + Ka Ia

I を求める手順は以下のようになる.

  1. N・L = rd なので,拡散反射光を求めるときに用いた rd を R を求める時にも使える(R = 2 rd N - L).
  2. 視線ベクトル V と反射光ベクトル R は対向しているため,R・V < 0 の時に鏡面反射(ハイライト)が発生する.したがって,
    rs = R・V
    もし rs < 0 なら
    rs = (-rs/|V|)Ke
    Is = rs Il
    それ以外
    Is = 0
    として,I = Ks Is + Kd Id + Ka Ia を求める.