WebGL 1.0 OpenGL ES 2.0 Google Chrome 12.0.742.100 jQuery 1.6.2 glMatrix 0.9.5 |
■WebGLでランバート拡散照明 [ サンプルページ ] | Prev Top Next |
関連ページ:WebGL 1.0 はじめました |
今回はシェーダーの基本中の基本、ランバート拡散照明です。 当然ですが、頂点の法線ベクトルと平行光源の方向ベクトルを新たに追加しました。 他にも修正しているけど後はソースを見てください。
シェーダーソースの実装ではまりました。どうも宣言だけして未使用のuniform変数は自動的に削除されるようです。 削除されるため、gl.getUniformLocation()でハンドルを取得するとnullがかえります。 まあ普通こんなことはしませんがね。
glmatrix関連の関数を今回新たに使用しました。
平行光源の方向ベクトルにモデル行列の逆行列を適応するところです。
glMatrixのリファレンスは見当たらないので、使い方についてはソースを見てください。
glMatrixのソース
最後に対応するブラウザは、Google Chrome のみです。以上!!