【Shade】無限遠光源の大きさ
今回のはちょっとまとまってませんが、やる気ENDしたのでこれ以上精度を追求したい方は是非ご自身でレンダリングしてくださいです。できればその結果を教えていただけると私が喜びます(笑)。
で、恒例のShade実験シリーズ。今日のテーマは「無限遠光源の影のソフトネス値について」です。
無限遠光源には(影の)ソフトネスなるパラメータが存在しています。言うまでもなく影の輪郭をぼかすための機能です。ところで、現実にも太陽光線による影は僅かに輪郭がぼやけています。これは太陽が見かけの大きさをもった光源であるために、
図のようにぼやけた輪郭(緑)の部分を生じます。輪郭のぼやけ具合は光源の大きさと形によって決まります。形はよほど変な形でない限りは正方形とか円で近似してよいと思うので、今回の実験では、光源の大きさとソフトネス値の対応関係を調べます。
実験装置は上の図と同じようなものを用意し、図の青い影の部分の長さの変化から光源の大きさを推定します。実際に使った舞台装置は
ですので、ご覧になりたい方はどーぞ。このセットを無限遠光源のソフトネス値をいじりながらレンダリングしていくと下のような画像が得られます。
この画像から色(0, 0, 0)のピクセルのみを抜き出したときの高さを最初の図の青い影の部分とし、その長さから光源の見かけの大きさを計算します。
ソフトネス値 |
影の高さ(px) |
光源の大きさ(度) |
0.00 |
200 |
0 |
0.05 |
180 |
60.3 |
0.10 |
159 |
13.0 |
0.15 |
140 |
20.0 |
0.20 |
124 |
26.4 |
0.25 |
109 |
32.8 |
0.30 |
95 |
39.2 |
結果を見るとソフトネス値が1.00のときの無限遠光源の大きさはおよそ130度のようです。ノイズの影響をかなり受けているっぽいので、実際にはもう少し大きいかもしれません。少し精度を上げる努力もしてみたら156度くらいまで行きそうな感じがしましたが、180度にはさすがに届かないような気がします。届いてくれた方が気分は良いんですけど、所詮プログラム内の定数ですし…。
Wikipediaによると 太陽の見かけの大きさは30分(=0.5度)ですので、156度の推定が正しいとすれば、対応するソフトネス値は0.01くらいと言うことになります。
他にもキーライトやフィルライトの代わりに大きめの無限遠光源を使ったりとか、無限遠光源の大きさを知っていると案外役に立つかもしれませんよ。
MiniDiary
品質のこと
多分ゆっくり書けばもっと綺麗な図とわかりやすい説明で書けるんですけど、毎日更新するスタンスでやるとこの程度でも実験含めて4-5時間になるのでそこはお許し頂きたいです。わかりにくいのは自覚してますので、わかんないことあったら遠慮無く聞いてください。