デプスシャドウ技法による影生成の改良型の紹介がさらに続きます。
前回、紹介したライト・スペース・パースペクティブ・シャドウマップ技法におけるシャドウマップ生成を複数枚のテクスチャを用いて行う技法が、カスケード・ライト・スペース・パースペクティブ・シャドウマップ技法です。
この名前の長さは(笑)、ある意味、下地となっている技術に様々な改良が付け加えられてきたことを表していると言えます。
西川善司の3Dグラフィックス・マニアックス第27回
影の生成(8)~改良型デプスシャドウ技法(3)
http://journal.mycom.co.jp/column/graphics/027/index.html
具体的には、視点位置からの距離に応じたいくつかの領域に対して、異なる複数枚のテクスチャにシャドウマップを生成する…という工夫になります。
複数枚のテクスチャを折り重ねるようにして(カスケードさせて)シャドウマップ生成することから、この技法の名前が付いています。
実際のシーンのレンダリング時には、レンダリングピクセルの影判定の際、視点位置からどのくらい離れているのかをキーにしてシャドウマップを切り換えます。
思うに、この技法も、ハードウェアレベル&APIレベルでのサポートがあれば嬉しいと思うんですけどどうですかね...
MIPMAPテクスチャ参照みたいな感じで、カスケードさせたシャドウマップに対してアクセスした場合、折り重なるようにして生成されているシャドウマップについては2枚のシャドウマップに対してサンプルしてバイリニアフィルタリングして返してくれるような仕組み。
自前シェーダでも出来るでしょうが、GPUやAPI側で支援してくれると楽ちんそうですが...
.
Comments