イラディアンスキャッシュ

一般

Cinema 4D R15では、新しいイラディアンスキャッシュ方式が導入されました(ここでは新IRと呼びます)。この方式には、他の方式と比較して、次のような利点があります(イラディアンスキャッシュ(旧)GIモードでもまだ使うことができます)。

コンタクトシャドウなどの詳細(オブジェクトが交わるコーナーエッジなどで作られるもの)の品質がさらに高くなります(純粋なQMCレンダリングの質で適切に設定した場合)。

新しいイラディアンスキャッシュ方式によって、コンタクトシャドウのレンダリングが改善されました(左の画像でマーキングされた領域など)。モデル作成はSteen Winther氏。

新しいアルゴリズムがレンダリングを加速します。

新IRは、Team Renderと併用すると最もよく機能します。Team Renderは、アニメーションの質も改善され(ちらつきの減少など)、スピードも速くなりました(GIとアニメーションも参照)。

ヒント:このページの全ての画像は、 プライマリの方式またはセカンダリの方式のいずれかを使ってイラディアンスキャッシュをレンダリングしたものです。

「イラディアンスキャッシュ」とは?

IRレンダリングの間に、シーンを分析するいくつかの事前計算(「プレパス」)が行われ、最も重要な間接ライトの領域(プレパスの間に表示される「シェーディングポイント」。密度値を小さめにすると良くわかります)を確定します。詳細については下の説明をご覧ください。

これらシェーディングポイントの明るさとカラー値。

これらシェーディングポイントの明るさとカラー値が、いわゆる「エントリ」としてイラディアンスキャッシュに保存されます。このキャッシュは、例えば、写角やカメラアニメーションが変更された時などのために再利用できるよう保存することができ、また、保存しておくべきものです(キャッシュファイルタブの設定を使います)。キャッシュは、画像ビューアーにレンダリングした場合にのみ再利用することができます(ビューポートでレンダリングしている場合にはできません)。

これらのイラディアンスキャッシュエントリは、最終レンダリングの間に、間接ライトで照らされたシェーディングポイントの間に置かれたピクセルを供給するために補間されます。

…は、ライトが均一に分散されるよう補間されます。

イラディアンスキャッシュ方式を使う時のデメリットも紹介しておきましょう。制限された数のシェーディングポイント間を補間する場合、ライトとシャドウに関する詳細が失われてしまう可能性があります(ただし、以前のバージョンほど急激にではありません)。この点では、QMCの方がメリットは大きいです。

ライトとシャドウの分散に関しては、QMCモードを使えば、常に、最高のGI品質を得ることができるということを忘れないでください(残念ながら最も遅い)。イラディアンスキャッシュは、いつでも、できる限りQMCに近い結果を出そうとします。

イラディアンスキャッシュは、アニメーションで使用する場合、ちらつきが生じる傾向があります。新IR方式はちらつきを減少させます。概して、イラディアンスキャッシュは、とても明るく、小さいポリゴンライトを使った場合に最もちらつきが生じます。IRで、大きく均一な光源(様々な角度から均一に照らす空が照明に使われている場合など)を使うとちらつきが最も少なくなります。

ヒント:次の設定は、新しいアンビエントオクルージョンの設定にも含まれています。これらが機能するための基本原則は同じです(AO、ただし、レコード密度デプスは1のみ)。

一般的なヒント: 得られた結果にムラがある場合は、レコード密度値を大きくすることで解決することが多いです。セカンダリの方式の設定を改善すると良いでしょう。ただし、例えば、使用することができるのがとても質の悪いライトマップのみの場合は、イラディアンスキャッシュでムラをなくすことはほとんどできません。

レコード密度

次の設定のほとんどが微調整のみに使われます。ほとんどの場合、レコード密度設定のを、下の設定の対応する値と併用すれば十分です。プレビュモードは、最終結果のプレビュをすばやく表示します。カスタムは、レコード密度が手動で変更されるとすぐに使えるようになります。

概して、例えば、ポリゴンライト(GIポータルなど)のハードシャドウを表示する場合は、レコード密度の値のみを変更します(作業の遅い全ピクセルでサンプルを使う必要はありません)。

最小レート[-8..4]

最大レート[-8..4]

イラディアンスキャッシュでレンダリングする場合、初めに、いくつかのプレパスが計算されます(正方形が現れ、その後小さくなっている段階)。この段階では、シェーディングポイントの分散が確定されます。これは、角、シャドウエッジなど、重要な領域を特に強調する適応性に富んだプロセスです。最小レート最大レートとの差によってプレパスの数が定義されます(最小レートの説明も参照)。

値が0の場合、最大解像度の画像(ピクセルサイズ1x1)を作成し、値が-1の場合はピクセルサイズ2x2の画像を、値が-2の場合は4x4の画像を…という具合に作成します。論理的に、最小レート値は、常に、最大レート値よりも小さくなるようにします。ただし、プラスの値も可能で、この場合、サブピクセルキャッシュのエントリもできます(詳細が見つからない場合、サブポリゴン変位に使うことができます)。最終的には、これらの設定は、以前のIRでそうであったほど重要ではありません。レンダリング時間の違いは実際にはわからないほどで、妥当な値が入力されている限り(最大レート0以上)、レンダリング結果にもそれほど差は出ません。最小レートにマイナスの値を使い、最大レート0にセットしたら、大きな問題が起こることはないでしょう。

密度[10..1000%]

最小間隔[0..1000%]

最大間隔[0..1000%]

下から上へと密度値を大きくした場合。

密度値は、シェーディングポイントの全体的な分散を調整します。値が大きいほど、シェーディングポイント密度が高くなります。

これら3つの設定は全て一緒に機能するため、一緒に説明することにします、簡単に言うと、これらは、重要な領域と重要ではない領域でのシェーディングポイントの密度を定義します。

密度: 次の2つの設定を考慮した全体的なシェーディングポイント密度です。

最小半径: 重要なエリア(角、シャドウなど)でのシェーディングポイント密度です。

最大半径: 重要ではないエリア(平面サーフェイスなど)でのシェーディングポイント密度です。

次の画像で、前述の設定による効果を見ることができます。

密度最小半径最大半径の各設定による異なる変化。

シェーディングポイントの分散がどのようにして最終レンダリング画像に影響を与えるのでしょうか? きちんとレンダリングされた画像の重要なエリアでは数多くのシェーディングポイントが必要となり、その他のエリアでは中程度の密度が必要となります。それぞれのシェーディングポイントができるだけ多くのサンプルを必ずもっているようにすれば、問題が生じる可能性が極めて低くなります。

スムージング[0..1000%]

前述の設定は、全て、シェーディングポイントの配置や計算に関するものでした。プロジェクトの多くの場所で間接照明が確定されました。このポイントごとの明るさの分散を、レンダリングの間に平面的な分散へと変換しなければなりません。スムージングアルゴリズムは、これを、あるオブジェクトのレンダリングしたいそれぞれのピクセルについてイラディアンスキャッシュをスキャンし、明るさとカラー値を補間するために近接するエントリを探すという方法で行います。

スムージング値が大きいほど、特定のピクセルをレンダリングするための補間に使われるシェーディングポイントが多くなります。この設定は、近接する特定のキャッシュエントリを使用するかどうかを判断するためのしきい値を表します。小さめの値では、一般的に、シャープな(そしてさらにムラのある)効果が生じ、大きめの値では、広いエリアにわたって補間が行われてより均一な照明になりますが、細かい描写が失われてしまうことになります。概して、スムージングの値を変更する必要はほとんどありません。

陰影の改善[0..1000%]

大きめの陰影の改善値を使うと、キャストシャドウがよりはっきりとするのがわかります。

この設定の値を大きくすると、GIライトが急に変化する領域 (明るいポリゴンライト上のGIシャドウなど)でのレンダリングの質が向上します。基本的に個々で行われているのは、より多くのシェーディングポイントの作成です(これに伴ってレンダリング時間が長くなります)。

重要: レコード密度を十分大きくしてライトの分散が均一になるようにします。こうしないと、GIライトが急に変化する領域でムラのある領域が生じることになります。

GIコースティクスも、大きめの値の方がよく精細な結果になります!

わずかな時間で行ったQMCのようなコースティクスレンダリング(右)。

スクリーンスケール

以前のイラディアンスキャッシュでは、レンダリングする画像のサイズには無関係にシェーディングポイントの分散が行われました。つまり、解像度が80x80ピクセルの画像でも1024x768ピクセルの画像でも同じプレパスが使われていたわけです。スクリーンスケールオプションを有効にすると、シェーディングポイント密度を画像の解像度に合わせることができます。これは、解像度がとても大きい画像では、解像度のとても小さい画像よりもさらに多くのキャッシュエントリが作られることを意味します。したがって、小さめの画像は速くレンダリングされ、大きめの画像のレンダリングはそれに応じて遅くなり、これによって、より細かいところまで表示されるようになります。