さて、雪ダルマを使ってPOV-Rayの解説をしていますが、今回はシーンファイルにいろいろとオブジェクトを追加していってみましょう。
前回変更を加えた雪ダルマのpovファイル(SnowBoy.pov)を開きましょう。
さて、暗闇の中にぽつんと浮かんだ雪ダルマというのもシュールですが、やはり雪の平原が欲しいところですね。
ということで、この命令を追加しましょう。
plane { y, 0 texture { Shiro} }
追加する場所はどこでもいいのですが、私は照明の設定の後、メインのオブジェクトの前に入れています。
この命令を解説しましょう。
「plane {〜}」は無限に広がる平面を作れという命令です。
{ }の中に「y, 0」とありますが、これは「平面の位置は高さ(y軸)が0の位置」という意味です。
(本当は、「y」は法線ベクトル<0,1,0>という意味で、次の0は原点との距離を示しています)
「texture」は雪ダルマと同じ「Shiro]にしています。
これでレンダリングするとこのようになります。
雪原に影が落ちて、いい感じですね。
周囲が黒というのも寂しいですね。
あとで背景画を合成するとか、夜のシーンだからこれでいいというなら話は別ですが、せっかくですから空を作ってみましょう。
空の作り方にはいろいろな方法があります。
では、いくつか作り方を説明します。
いちばん簡単な方法は、周囲の色を変更する方法です。
次の命令を追加しましょう。
background { color rgb <0.3, 0,4, 1.0> }
「background {〜}」はシーン全体の背景色を決める命令で、{ }内に色の設定をいれることで、黒だった背景が指定した色に変わります。
天球というものを追加するという方法もあります。
天球とは無限に大きい球で、その内側にカメラや照明、オブジェクトがあるという状態になります。
次の命令を追加しましょう。
sky_sphere { pigment { color rgb <0.3, 0,4, 1.0> } }
この場合は、背景色を変更したのと違いは見られません。
天球は無限大とはいえ物体ですから、いろいろな塗り方ができます。
簡単な塗り方として、グラデーションをかけてみましょう。
sky_sphere {
pigment {
gradient y
color_map {
[ 0.0 color rgb 1 ]
[ 0.5 color rgb <0.3,0.4,1.0> ]
}
}
}
かなり難しくなったような感じがしますが、じっくり見てみましょう。
「sky_sphere { pigment {〜} }」という部分は変わりませんね。
「gradient y」というのは縦(y軸)方向にグラデーションをかけろという命令で、次の「coloro_map { [〜][〜]・・・[〜] }」でグラデーションの色を決めます。
[〜]の中には、各位置の色の設定が入ります。
この場合の位置は0〜1で表し、0が水平線、1が天頂となります。
[0.0 color rgb 1]は、「地表近くの色は白」であることを、[0.5 color rgb <0.3, 0.4, 1.0>]は「真中辺りから天頂までの色は青」であることを示し、地平線からしばらくグラデーションがかかります。
その他にPOV-Rayについてくる標準includeファイルを使うという方法もあります。
しかしその方法については、あとで「標準includeファイルの活用」という内容で講義を行うつもりですので、お待ちください。
地面と空を追加しただけですが、かなりCG作品と言えそうな感じになってきましたね。
次回はこの雪ダルマを使って、標準includeファイルの解説を行ってみようと思います。