レイトレーシングでのAmbient Occlusionの計算

学生の頃に実装したレイトレーサーで, Ambient Occlusionの計算をした結果の画像を貼っておきます.

手法としてはピクセル単位で飛ばしたRayと物体との衝突点において, その法線を中心として半球状にランダムに64個のRayを生成して遮蔽度を計算しています.

参考にした本は, "Ray Tracing from the Ground Up", Kevin Suffernです. この本のp129に, cosine分布で半球状にRayをランダムに生成するコードが載っています.