ShaderTechで、シェーダプログラミングコンテストである「シェーダトライアスロン」が開催されていたので、挑戦してみました。
で、いつものようにプログラムです。
ソースには、いつものように適当にファイルが入っています。 大事なファイルは次のものです。
main.h | アプリケーションのヘッダ |
main.cpp | アプリケーションのソース |
hlsl.fx | シェーダプログラム |
GPU Gems の Simon Green の方法をPRTに追加しました。
手を抜いて法線と反対側の半球しか取り込んでいません。
また、直接貫通して入射してくる光しか計算していません(これは、入射光のマップをぼかせば擬似的にできることは分かっていたのですが、時間がありませんでした)。
すまん、細かい解説をするひまが無い。