2014-03-14から1日間の記事一覧
今度は簡単なトゥーンシェーディングをやってみます。 前回作ったフォンシェーディングのフラグメントシェーダを以下のように変更します。 #version 120 varying vec3 Position; varying vec3 Normal; void main() { int levels = 3; float scaleFactor = 1.…
前回はシェーディングの計算を頂点シェーダで行うグーローシェーディングというものをやってみました(ADSシェーディングではないですが、前々回も)。 各頂点でシェーディングするということは色を各頂点にひとつ関連付けるということです。 この値をフラグメ…
前回、Diffuse反射を実装してみました。 OpenGLの固定機能のパイプラインでは他にもAmbient成分とSpecular成分という光の成分を加えたADSシェーディングというものを使っているみたいです。 ですので、前回のDiffuse反射のプログラムをいじってAmbient成分と…
Diffuse反射というものがあるらしいです。 まあ、全然よくわからないんですが、Diffuse反射には数学モデルがあるので、それに従って実装すればいいでしょう。Diffuse反射の数学的モデルでは、反射光は以下のような、ある点の法線ベクトルとその点から光源へ…