この5日間ほど、ひたすら影についてのプログラムを組んでいた。
3Dプログラムにおいて リアリティに直接関係してくる影の表現は プログラム界の永遠のテーマとも言えるほど奥が深い。
現実世界では嫌でも表れる影が いざ画面上で再現するとなると、なんと難しいことか。
というわけで。

とりあえず、まっすぐでない面(階段とか)でも 現実世界と同じように影が落ちるプログラム完成。
それとセルフシャドウ、つまり3Dモデル自身に モデル内の部品の影が映る現象も実現。 (飛行機のエンジンや尾翼の影が胴体に映っている現象)
参考にした書籍のプログラムに問題が多く、 いろいろなところを修正しながら高速化を測ったが、 まだ実用に耐えない。
がむしゃらに勉強したのだが、 効率を上げるために必要な計算自体に処理時間がかかったりして なかなか速度が上がらない。
もうちょっとがんばってみよう。
|