« CINEMA 4D R9.5 | メイン | スイカガールmmv »

2005年08月06日

アンビエント・オクルージョン [ CINEMA 4D R9.5 ]

 R9.5の新機能、[アンビエント・オクルージョン(Ambient Occlusion)]について紹介。

 まず、元からある「汚し(dirt)」と同じじゃねえの? と誰もが思うはず。ある意味その通りで、原理は全く同じもの(詳しくはググれ〜)。ただし、実装の仕方が大幅に改良されており、クオリティ/スピード/自由度等、実用レベルでは別物といっていい。「面白いけど使えない」機能だったものが、ちゃんと実用になる機能に進化している。

 実際に「dirt」と「AO」のクオリティを比較してみよう。どちらもカラーチャンネルにシェーダとして入れたマテリアルを全てのオブジェクトに適用し、環境光100%・ライト無しでレンダリングしている。「dirt」のほうは凸エッジや引っ込んだカドに白いアーティファクトが発生していて、一見して使い物になるクオリティでないのがわかる。一方「AO」のほうは完全にスムーズ。レンダリング時間も「AO」のほうは半分で済んでいる。

050806_AO_3.jpg

 シェーダのパラメータも多くなっている。「AO」では陰影に対してグラデーションでカラーを設定でき、「計算精度」「最小/最大サンプル数」によって柔軟に品質対時間のトレードオフができるようになっている。

050806_AO_1.gif

 「AO」はシェーダとして使うほか、シーン全体に適用することもできる。この場合、「シーンに適用」でレンダリング画像に直接合成する方法と、マルチパスで独立したチャンネルとして取り出し(デプス等と同じように)後処理に使う方法がある。AOのパラメータはシェーダと全く同じ。

050806_AO_2.gif

 疑似的なグローバルイルミネーション効果としてAOを使う場合、まず環境光を強めに出して暗部の明度を引き上げておき、そこにAOが乗算合成されてバランスがとれるようにする。

050806_AO_4.jpg

 AOはGIと違って、ライトやマテリアルを反映しないので、環境チャンネルと上手く組み合わせる等の工夫をしないと、シーンによっては全く辻褄が合わない結果になる可能性がある。また、オブジェクトの物理的スケールとAOのレイの届く距離が合っていないと良好な結果が得られないため、シーン全体に同じ設定を適用して上手くいくケースは少ない(上の例でも大きめのオブジェクトでは陰影が足りていない)。どちらかというと、独立したチャンネルとして取り出せる、あるいはシェーダとして好きなように使えるといった自由度のほうにメリットがある感じ。GIがシミュレーション指向でオートマティックな道具だとするなら、AOはアーティスト指向でマニュアルの道具ということになると思う。

投稿者 ヒロツ : 2005年08月06日 11:39

トラックバック

このエントリーのトラックバックURL:
http://kowloo.net/hirotsu/mt/mt-tb.cgi/169

コメント

詳しい解説ありがとうございます。
こうやって比べていただけると、アーティファクトは別にして全く同じ結果なんですね。
汚しシェーダーはサンプル数をかなり上げてもノイズが消えなかったのであまり使ってなかったんですが、AOはよさそうだなあ。
C4DのGIは光のあたっていない場所の面の移り変わりに弱いと感じているので、積極的に使っていこうと思います。

>GIがシミュレーション指向でオートマティックな道具だとするなら、AOはアーティスト指向でマニュアルの道具
うまい表現ですね!C4Dは愚直なフォトリアル指向ではなく、パーツを組み合わせていろんな表現をできるのが面白いですよね。反射ボケも早くなってるみたいだし、個人作品もC4D+ARに戻そうかなあ。

投稿者 kurosawa : 2005年08月07日 15:00

コメントしてください




保存しますか?


※URLが多数含まれているとコメントスパムとみなされることがあります
※投稿後すぐにコメントが反映されない場合はリロードしてみてください