| On this page |
前項 サンプリング
概要 ¶
Karma CPUには、Karma XPUと比べてはるかに幅広いサンプリングコントロールが用意されています。 デフォルトで、プライマリ光線とセカンダリ光線の両方に対して、高度な適応サンプリング手法が使用されます。 Karma XPUと同様、Path Traced収束にも対応しています。 Karma CPUの追加のコントロールの多くは、両方の収束モードのセカンダリサンプルおよびノイズレベルに関連したものです。
Automatic収束 ¶
デフォルトで、Karma CPUは Automatic 収束を使用するようにセットアップされています。 通常はこれがうまく機能し、より多くのコントロールでノイズを軽減して、レンダリングの過剰サンプリングやサンプリング不足を制御することができます。
|
プライマリサンプルコントロール |
セカンダリサンプルコントロール |
|---|---|
|
|
Karmaは、オブジェクトに当たったすべてのプライマリサンプルに対してセカンダリサンプルを放射します。
そして、シェーダが生成するローブタイプ(diffuse、reflection、refraction、sss、volume)毎に少なくとも1本の光線を追跡します。
Karmaは、 Max Secondary Samples 値に達するまで、または、バリアンス(差異)が閾値内に収まるまでセカンダリ光線を送信します。
Karmaには、追加のIndirect Sample Qualityコントロールセットが用意されています。 これらを使用して、特定のローブのノイズを軽減することができます。 値は Min/Max Secondary Sample 値の乗数ですが、特定の各光線タイプにのみ適用されます。
Automatic Properties
Pixel Samples
各ピクセルから送信される光線サンプルの数。 光線サンプルが多いほど、ノイズの少ない画像が得られます。 別名 Primary Samples とも呼びます。
Min Secondary Samples
コンポーネント毎のバリアンスアンチエイリアスで送信する光線の最小数。
Max Secondary Samples
コンポーネント毎のバリアンスアンチエイリアスで送信する光線の最大数。
Secondary Noise Level
Convergence Mode が Automatic に設定されている時に、間接バウンスで送信する間接光線の数を決めるノイズ閾値。
この閾値を下げると(例えば、0.001に設定)、理論上はもっと多くの間接光線が送信されてノイズが減りますが、“余分な”光線は Max Ray Samples パラメータによってほぼ相殺されることになります。
ノイズを減らす正しい方法は、この閾値を変更することではなく、ピクセルあたりのサンプル数を上げることです。
Variance Pixel Oracle を使用した場合、両方の閾値パラメータに同じ値を設定してください。 Variance Pixel Oracle の閾値を下げるほど、間接コンポーネントがすぐにその閾値に到達してあまり間接光線が送信されなくなるものの、 Variance Pixel Oracle はBeautyパス内の最終ノイズ量が Variance Pixel Oracle の閾値より多ければ、負荷が大きいカメラ光線をもっと多く送信することを決めます。
Light Sampling Mode
Karmaにライトの均一サンプリングを実行させるのか、または、レンダリングでライトツリーを使用するのかどちらかを指定します。 ライトツリーは、膨大な数のライトを持ったシーンに対して非常に高速にレンダリングすることができます。
一部のライトはライトツリーに追加することができず、すべてKarmaでサンプリングされます:
-
Dome Lights
-
Distant Lights
-
Point Lights
-
ライトフィルタを持ったライト
-
シェイプコントロールを持ったライト(例えば、スポットライト)
Light Sampling Quality
これは、すべてのライトのサンプリング品質を改善するためのグローバルコントロールです。 これは、個々のライト品質コントロールの乗数として作用します。 サンプリング品質を上げると、直接照明サンプリングだけでなく、シャドウ/オクルージョンの品質も良くなります。
Pixel Oracle
レンダリングする時、Pixel OracleはKarmaにどのピクセルを追加でサンプリングする必要があるのか、どのピクセルが集中しているのかを伝えます。 このパラメータは、使用するPixel OracleをKarmaに伝えます。
uniform
各ピクセルに光線を均等に分布させます。各ピクセルは常に同じ数の光線サンプルを受け取ります。
variance
レンダリング画像内の分散に基づいて光線を分布させます。
Diffuse Quality
このパラメータは、間接ディフューズコンポーネントの Min Secondary Samples と Max Secondary Samples の乗数として作用します。
Reflection Quality
このパラメータは、間接反射コンポーネントの Min Secondary Samples と Max Secondary Samples の乗数として作用します。
Refraction Quality
このパラメータは、間接屈折コンポーネントの Min Secondary Samples と Max Secondary Samples の乗数として作用します。
Volume Quality
このパラメータは、間接ボリュームコンポーネントの Min Secondary Samples と Max Secondary Samples の乗数として作用します。
SSS Quality
このパラメータは、SSSコンポーネントの Min Secondary Samples と Max Secondary Samples の乗数として作用します。
Path Traced収束 ¶
Path Traced収束モードでは、コントロールは Path Traced Samples と、選択したPixel Oracleの設定だけです。 見込まれる値の範囲がAutomaticモードに比べて広いので、混乱しないように別のパラメータ名を用いています。
|
プライマリサンプルコントロール |
セカンダリサンプルコントロール |
|
|
このモードでは、プライマリ光線がオブジェクトに当たると、Karmaはデフォルトで 2個 のセカンダリサンプルを送信します。 1個 はライトに向けた直接サンプルで、 もう1個 はシーンに放射される間接サンプルです。 このようにシンプルであることから、初期段階ではPath Traced収束が非常に高速でインタラクティブですが、シーン内の特定のセカンダリ光線タイプからのノイズを解決できるコントロールはほとんどありません。 Light Sampling Quality は、各ライトをサンプリングする回数を決定しますが、Karmaは Light Sampling Mode に基づいてサンプリングするライトの数を決定します。 また、Karmaは間接サンプルローブをランダムに選択します。
Note
インタラクティブなビューポートレンダリングでは、Karmaは最初の数サンプルに対してパストレーシングを実施した後、Automatic収束に切り替えます。 これによって、Solarisでのインタラクティブな操作性が向上します。
Path Traced Properties
Path Traced Samples
Convergence Mode が Path Traced の時に使用される各ピクセルから送信される光線サンプルの数。 光線サンプルが多いほど、ノイズの少ない画像が得られます。
Light Sampling Mode
Karmaにライトの均一サンプリングを実行させるのか、または、レンダリングでライトツリーを使用するのかどちらかを指定します。 ライトツリーは、膨大な数のライトを持ったシーンに対して非常に高速にレンダリングすることができます。
一部のライトはライトツリーに追加することができず、すべてKarmaでサンプリングされます:
-
Dome Lights
-
Distant Lights
-
Point Lights
-
ライトフィルタを持ったライト
-
シェイプコントロールを持ったライト(例えば、スポットライト)
Light Sampling Quality
これは、すべてのライトのサンプリング品質を改善するためのグローバルコントロールです。 これは、個々のライト品質コントロールの乗数として作用します。 サンプリング品質を上げると、直接照明サンプリングだけでなく、シャドウ/オクルージョンの品質も良くなります。
次のステップ ¶
Karma CPUでのサンプリングの仕組みを理解したら、次はレンダリングのノイズを減らすための実用的なヒントを見ていきます。
次項 ノイズの軽減