コンピュータグラフィックス 光源とシェーディング 光の性質 シェーディングの基礎知識 • • • • • 拡散反射光 鏡面反射光 屈折光 放射光 環境光 拡散反射光 • 物体の表面に入射した光があらゆる方向に等しく拡散す るような反射 • 例:光沢のない紙や布 – 拡散反射光の強度は入射角が小さいほど大きい – 反射光はあらゆる方向に等しく拡散する I kd I i cos 鏡面反射光 • 光沢のある面で光源の映り込みのような反射 • 例:光沢のある新車のボディや床面など – 鏡面反射光の強度は反射角と入射角が等しいときに最大となる “ハイライト”。 – 反射角と入射角と異なるほど小さくなる – 反射面の光沢度は大きいほど,ハイライトは小さく明るくなる 屈折光 • 屈折率 r k1 k2 sin1 sin2 Ii k1 1 k2 2 • 屈折率: 真空は1.0 水は1.3 ガラスは1.5~1.9 放射光 • 光源がなくても自ら発光してみえるような物体 環境光 • 空気による散乱や周囲物体からの反射などによって近 似的に一定値に設定する環境光 シェーディング • フォンの照明モデル – 物体表面の輝度は,拡散反射光,鏡面反射光及び環境光で構成 輝度=α×拡散反射+β×鏡面反射+γ環境光 環境光 正反射方向 入射光 Ii 視線方向 反射光 シェーディング法 • フラットシェーディング法 各ポリゴンの中心点における輝度をそのポリゴン全体の輝度と する手法 平面に問題ないが,曲面では各ポリゴンの境界線が目につく • スムーズシェーディング法 ポリゴンの境界を目立たなくするために,オブジェクト表面の輝 度が連続的に変化するように補間する手法 グローシェーディング法とフォンシェーディング法が代表的 グローシェーディング法 • アルゴリズム – 頂点の法線ベクトルを,頂点を形成するポリゴンの法線ベクトルの 平均値とする – 各頂点の輝度値を「フォンの照明モデル」より計算する – 任意点の輝度値を周囲の頂点の輝度から線形補間により計算する フォンシェーディング法 • アルゴリズム – 頂点の法線ベクトルを,頂点を形成するポリゴンの法線ベクトル の平均値とする – 任意点の法線ベクトルを周囲の頂点の法線ベクトルから線形補 間により計算する – その点の輝度値をフォンの照明モデルより計算する グロー法とフォン法の比較 • グロー法では,任意点の輝度値は周囲頂点の輝度値か ら線形補間により計算されるため,高速に描画できるが, ポリゴン内にハイライトを表現できない • フォン法では,任意点の法線ベクトルを線形補間で推定 されるため,ハイライトを適確に表現できるが,すべての 点の輝度値を計算する必要があり,時間がかかる
© Copyright 2024 ExpyDoc