Subject  : シェーディング

カテゴリー: 画像処理


 シェーディング
 シェーディングとは、物体の陰影を計算することである。シェーディングには次のような種類がある。
一般に、3DCGにおいて光源の位置や光反射から立体の陰影を算出する手法がシェーディングと呼ばれる。シェーディングの計算レベルに応じて、立体表面の構成要素であるポリゴンを単位として各ポリゴン平面を単色で表示するフラットシェーディングや、ポリゴンの端(頂点)の明るさの差からポリゴン平面の色をグラデーションさせるグーローシェーディング、そして立体表面の質感による光反射を取り入れて表現するフォンシェーディングがある。

● フラットシェーディング(flat shading)
フラットシェーディングとは、3次元コンピュータグラフィックスにおける陰影付けの手法の一つ。補間などの計算手法を使用せず、面の法線から求めた明るさを使って面全体を描画する。もっとも計算量の少ない方法だが、面全体が同じ明るさで描画されるため、画質は低い。

ポリゴンの法線ベクトルと光源との角度から各ポリゴンの色を算出する。一つのポリゴンは一色に塗りつぶされる。単純なアルゴリズムなので計算速度が高速であるが、ポリゴンの継ぎ目ごとに不連続的に色が変化するため、滑らかには見えない。コンスタントシェーディング(constant shading)とも呼ぶ。

● グーローシェーディング(gouraud shading)
オブジェクトの各頂点の法線ベクトルを求め、頂点間は一次補間してピクセルの色を算出する。ピクセル間の継ぎ目は目立たなくなる。gouraudは考案者の名前。

● フォンシェーディング(phong shading)
フォンシェーディングとは、3次元コンピュータグラフィックスにおける陰影付けの手法の一つ。フォンシェーディングでは面を構成する頂点の法線から各点の法線を線形補間で求め、得られた法線から各点の明るさをもとめる。面上の各点について、法線から明るさを求めなければならないため、計算量は多いが、高い画質が得られる。

オブジェクトの各頂点の法線の一次補間から、各ピクセルにおける法線を求めて、それを元に最終的なピクセルの輝度を算出する。グーローシェーディングにおける光沢の不自然さを改善する。Phongは考案者の名前。
グーローシェーディングがポリゴン平面の頂点と頂点との明るさの差を補間していく計算方法であったのに対して、フォンシェーディングは各ポリゴンの頂点の法線(表面と垂直に伸びたベクトル)から法線までの補間を求め、それを元に各点の色や明るさを決定している。法線ベクトルからポリゴン上の各ピクセルについて演算を行い明度を求める方式であるため、他のシェーディング計算に較べても計算量は膨大なものとなるが、フラットシェーディングやグーローシェーディングとは比較にならないほど精度の高い質感を再現することができる。
 ⇒ ライティング(Lighting)

[メニューへ戻る]  [HOMEへ戻る]  [前のページに戻る]