01.12
Tuesday
2010

Blogの中でも何度か記載したことがあるのですが、シーンの単純化という話題をとりあげてみたいと思います。シーンを製作する場合には複数のオブジェクトを配置し、設定をおこなうのですが、検討を重ねる毎にシーンは複雑化していきます。思い描いているシーンを初めて製作する場合に効果の表現方法を確認してみたり、思い通りにならない時にその原因を確認するのには、シーンを単純化してみるのが有効な方法です。今回は「水中でアルファ平面の透過部分がうまく透過されない」というメールを頂いたので、その現象を取り上げたいと思います。今回メールを頂いていろいろ考えたのですが、説明は画像付きのほうが判りやすいと思いましたので、Blog記事への返信を除いて、Vueに関する操作について質問があれば、Forum3Dへの投稿をお願いしたいと思います。個人的に判る範囲と時間の許す範囲でお答えしたいと思います。

今回、アルファ平面は「XfrogPlants : Billboars」のPoser用のデータをVueに取り込んだものを使用しました。大気設定デフォルトでこれを読み込んでレンダリングすると、以下のようなレンダリング画像となります。なお、質感はできるだけ立体が得られるよう、バンプマップを設定し、バックライトの効果を適用などの変更を行っています。


(ビルボードの設定)


(レンダリング画像)

一度に複数の操作をしてしまうと、原因が判らなくなるので、一つずつ要素を追加していきます。まず、水中のシーンでは光が射す様子を表現するのにボリュメトリック光源が使用されます。このため、まずボリュメトリック光源(スポットライト)で上記アルファ平面を照らしてみます(図1)。


(図1:ボリュメトリックライト)

今回はボリュメトリックライトとして、ライトジェル(コークティクス)を適用したスポットライトを使用しました。ボリュメトリックライトは質量のあるライトでオブジェクトがその軌道にあると光が遮られて、光の筋ができます。アルファ平面は平面に画像を貼り付けたものですので、アルファ平面とボリュメトリック光源の組み合わせはお勧めではありません。試しに、ライトの位置を前後左右などに変えてみたのですが、透過部分に異常は見つかりませんでした。


(図2)

さらに、水面(無限平面)を呼びだして、カメラが水面下となるように水面の高さを調節してみます(図2)。この場合には透過部分が明らかに目立つようになりました。このことで、水面にアルファ平面を配置したことが原因だろうというのが推測ができます。ちなみに、水面下でボリュメトリックライトを消去しても、これを消すことはできませんでした。屈折率が影響しているのではないかなと考えて、アルファ平面の屈折率を水の屈折率1.33にしてみたり、逆に水面の屈折率を1に変更してみたのですが、これを消すことはできませんでした。立方体では関数エディタでアルファが使用できるので、厚みを薄くしてアルファを適用してみたのですが、この方法でもだめでした。

解決方法なのですが、水面下でなければ特に問題はなかったので、先日の記事で紹介したように擬似的に水中を表現してみることにしました。空を覆うように立方体を拡大し「荒れた海」の質感を適用した立方体を拡大し、この立方体より上にボリュメトリックライトを配置します。大気はデフォルトなのですが、奥のほうが霞むような効果が得たければ、大気設定の天空、霧ともやのタブにおいて、霧の密度と高度の数値を変更してみてください。このようにすれば、アルファ平面でも透過部分が判らなくなります。


(図3)

今回のつぶやき
コークティクスが地面に落ちると綺麗だなと思ったこともあって、「Walking in the water ~水中散歩~」の手直しをすることにしました。霧の密度を20%まで下げて水の透明度を上げ、地面や建物の床面をコークティクスのライトジェルを適用したスポットライトで照らし出すことにしました。ボリュメトリックだと明るすぎるため、今回は通常のスポットライトを使用しています。個人的は結構よくなったかなと考えています。建物の枠が多すぎてガラスの外の景色が細かく区切られてしまったのが残念なのですが、こういうモデルなので、仕方ないかなと考えています。本格的な水族館の風景を作ろうとするのであれば、自分でモデリングを覚えなければいけませんね。


「Walking in the water ~水中散歩~」(改定版)
(クリックすると大きな画像が表示されます)

なお、「電脳箱庭」ではるさんがアルファ平面にわずかに線が残るという現象とその解決方法を紹介されていました。解決方法は画像の大きさをわずかに拡大するというものです。詳細はこちらの記事で確認してください(アルファ関連の記事がすべて表示されます)。


Comments









Trackbacks