自分でも写真を撮ってみる。gtofuji@gmail.comこのテキストはR14用です。4Dを使っているユーザーは照明基礎を参照して下さい。1心構えこの章では、041章で作成したシーンを使って、GIの設定の基本を説明します。初めに「心構え」について説明します。こんなことを書くかというと、「GIがうまく使えない」とか、「GIが遅い」という人の話をよく聞いてみると、「絵作り」とか「技術」以前にここで間違っている人が多いからです。これはGIに限ったことではありませんが、「知らない機能はいじらない」というのが鉄則です。「知らない機能を適当にいじってリアル絵ができることは絶対にありません」。「知らない機能を適当にいじると元に戻せなくなります」。「知らない機能を適当にいじった段階で、リアルな絵ができる可能性は消滅する」ということを肝に銘じておいて下さい。3DCGの機能の中には、理解しなくても使えるものや、適当にいじっているうちに理解できる簡単なものもたくさんあります。GIは、専門知識のない人間が適当にいじって理解できる程簡単ではありません。次に、これもGIに限ったことではありませんが、「知らない機能」に対応するには二つの方法があります。プログラミング」等の専門書をたくさん読んで、何年もかけてその機能を真に理解して使う方法です。一つは、「マニュアル」や「このテキスト」、「書籍」、「Webで公開されているチュートリアル」等の情報を信じて、その機能を理解しないまま使う方法です。どちらの方法で対応するかは各自の責任で決めて下さい。後者の場合にどの情報源を信用するかも各自でテストして決める必要があります。4Dには多くのGIモードがありますが、R14で実用的なのは「IR(静止画)」だけです。静止画に限らず、カメラアニメーション、フルアニメーション、及びそれらのNETレンダリング全てにおいて、「IR(静止画)」を使うようにして下さい。この点に関して、マニュアルや他のチュートリアルでは、「状況に応じて最適なモードを使う」ように書いてありますが、私の経験によれば、全ての状況に対して「IR(静止画)」が最も適しています。講習でパラメータの最適化等の細かい話はしないものですが、GIの場合パラメータのバランスによって画質やレンダリング時間が大きく変わります。そこで、いくつかの重要なパラメータに関して、「具体的な数値」を「レンダリング時間」と比較しながら説明します。ここから先は、レンダリング時間を厳密に比較するため、エディターへのプレビューレンダリングではなく、「画像表示にレンダリング」機能を使ってレンダリングします。サンプル042aを開いて、「画像表示にレンダリング」して下さい。これは041章で作成したサンプル041bと全く同じです。レンダリング時間は「27秒」でした。tab)」を実行すると、選択したウインドウを最大化できます。次に、この絵はまだ不完全です。図042-1では間接照明を1回しか計算していないからです。ライトから出た「直接光(0番目)」が壁に当たると、そこから「間接光(1番目)」が出ます。この「間接光(1番目)」が壁に当たっても、そこから「間接光(2番目)」が出ないのです。これはレンダリング時間を短縮するために省略されているのです。間接光を際限なく計算するのは無駄ですが、省略し過ぎると「GIらしい絵」になりません。値を「4」に増やして、結果を比べてみましょう。図042-2どうでしょうか、拡散反射を4回計算することで、影の中がずいぶん明るくなり、立体感が増しました。レンダリング時間は少しのびて「30秒」になりましたが、絵の「品質」を考えると、やはり拡散反射回数の値は4回以上にしたいものです。シーンの構成によっては拡散反射回数の値を「4」にすると、レンダリング時間が何倍にものびる場合があります。それは、奥まった部分やガラスのような屈折するマテリアルを多く含んだシーンに多いのですが、このような場合は、この値を「3」、「2」と減らしてみて下さい。4エリアシャドウの最適化それでは次に、図042-2(レンダリング時間30秒)を基準として、画質を落とさずにレンダリング時間をどこまで短縮できるか検討します。最初に、エリアシャドウの設定を最適化します。エリアシャドウは、厳密にはGIとは異なる機能ですが、GIと併用することが多く、レンダリングのアルゴリズムも似ています。レンダリング設定で「グローバルイルミネーション」特殊効果のチェックを外し、再度「画像表示にレンダリング」します。図042-3レンダリング時間は「7秒」でした。これを何とか半分ぐらいに縮めます。サンプル数」、「最大サンプル数」の3個のパラメータがあります。あるピクセルを計算する際に、その周囲の「明るさの変化」が小さければ最小サンプル数が使われ、変化が大きければ最大サンプル数が使われます。その「明るさの変化」の度合いを決めるのが計算精度の値です。ここで、「サンプル数」というと難しく聞こえますが、要は「光を何本飛ばすか」ということです。デフォルトでは「最小サンプル数」が「8」、「最大サンプル数」が「100」になっています。これは、「白い床に黒い影が落ちる」といった最も難しい条件を想定して決められた値なので、「光が弱い場合」や、「床の色が濃い場合」、「GIを使う場合」、「アンチエイリアスを使う場合」などは減らせます。今回もGIを使っているので、「4」と「32」ぐらいに減らしてみましょう。図042-4計算時間を「3秒」に短縮できました。確かに影が粗くなっていますが、GIやアンチエイリアスをかければほとんどわからなくなるはずです。48」ぐらいの間で調整するといいでしょう。計算精度の値は「75」のままで十分です。サンプル次にGIの「イラディアンスキャッシュ(IRの記録)」を最適化します。イラディアンスキャッシュというのは、GI計算のプレパスで表示される「白い点々」の集まりのことで、これらの点一つ一つの中にその部分の明るさの情報が入っています。GIを正確にレンダリングするには、以下の二つが重要となるわけです。白い点々の中に含まれる明るさ情報が正確であること。白い点々が十分に細かいこと。この白い点々の「正確さ」を決めるのが、「サンプル」の値です。それでは、このサンプルの値を「中」から「低」に下げてください。図042-5サンプル数を減らしても、レンダリング時間はが「26秒」とほぼ変っていません。それでは、イラディアンスキャッシュを生成するための「プレパス」だけを比較してみましょう。図042-6イラディアンスキャッシュの精度が悪くなったかわりに、計算時間は「6秒」短くなっています。ところが、イラディアンスキャッシュの精度が悪くなると、最終レンダリング時にそれを補間するのが難しくなり、結果的に全体のレンダリング時間は変らなくなってしまうのです。GIの設定をしていると、こういうことがよくあります。これがGI設定の難しさです。いうわけで、サンプルの値は「中」に戻しましょう。一般的に、サンプルの値は「中」か「高」のどちらかで使います。「低」にしても速くなりませんし、「高」より上げてもきれいになりません。ほとんどの場合、静止画は「高」で十分ですが、アニメーションでは「高」でも画面のちらつきが気になる場合があります。そのような難しいシーンで単純にサンプルの値を上げても、レンダリング時間がのびるばかりで、画質はそれほどよくなりません。したがってそのような場合は、後の章で説明する「コンポジットタグ」や「GIエリア」、「GIポータル」といった機能を使って、「部分的に計算精度を上げる」戦略を取るようにして下さい。次に、ステップ5で説明した白い点々の「細かさ」を決めるのが、「レコード密度」の値です。レコード密度には、大きく分けて2種類のパラメータがあります。プレパス計算のサイズや回数を指定するパラメータ(「最小レート」、「最大レート」)。「プレパス計算」というのは、最終レンダリングの前に白い点々を計算することで、解像度を上げながら何回かくり返されます。「最小レート」の値が「-3」で「最大レート」の値が「0」の場合、「解像度1/8」、「解像度1/4」、「解像度1/2」、「等倍(フルサイズ)」の4回プレパス計算がくり返されます。レコード密度のパラメータは、シーンに細かいオブジェクトが存在する場合細かくする必要があります。今回のシーンにはそれ程細かいオブジェクトが存在しないので、「低」にしてみます。図042-7レンダリング時間は半分以下の「11秒」となりました。明らかに細かい部分の画質が低下したので少しだけパラメータを戻します。それでは、「半径」の値を「16」にして下さい。図042-8レンダリング時間は「13秒」にのびましたが、影の部分の「光漏れ」が解消されました。GIの設定において、レコード密度のパラメータは最も重要です。それは、最も画質に影響し、最もレンダリング時間に影響を与え、最も値を決めるのが難しいからです。言いかえれば、レコード密度の値が適切でないかぎり、他のパラメータをどんなにいじっても絶対にいい絵はできないということです。心して設定して下さい。16」の間で変えることをお勧めします。それ以外のパラメータは、その意味を十分に理解していない限り触らない方がいいです。