Houdini 20.0 レンダリング

Mantra制限パラメータ

これらのコントロールは、MantraレンダーノードLimits タブ上にあります。 詳細は、Mantraノードのヘルプを参照してください。

Reflect Limit

光線がシーン内で反射できる回数。

この例では、2つの鏡の間に配置した被写体を使った典型的な“鏡のホール”のシナリオを載せています。

これは、実質的に無限に続く反射を作成しています。

このカメラ角度では、その反射制限が非常にわかりやすく、最終画像の精度に大きく影響していることがわかります。 しかし、ほとんどの場合では、その反射制限を巧妙に調整することで、シーン内の反射の数を減らすことができ、レンダリング時間を最適化することができます。

光源がオブジェクトで一度反射すると、それを直接反射と見なされることを覚えておいてください。 そのため、 Reflect Limit を0に設定しても、まだ光源のスペキュラー反射が見られます。

反射の最大数を超えた時に起きる事を制御するには、 At Ray Limit を使用します。

Refract Limit

このパラメータは、光線がシーン内で屈折する回数を制御します。

この例では、10個のグリッドすべてが1列に並んだ単純なシーンを載せています。

屈折のあるシェーダを適用することで、それらのグリッドを通じて、背景の夕焼けの画像を見ることができます。

このカメラ角度では、画像の精度を良くするためには、屈折制限をシーン内のグリッドの数に合わせなければなりません。

しかし、ほとんどのシーンでは、この数の屈折オブジェクトすべてが一列に並ばないので、最終画像に影響を与えずに屈折制限を下げることができます。

この Refract Limit は、オブジェクトの数ではなく、光線が通過しなければならないサーフェスの数を参照していることを覚えておいてください。

光源がサーフェスを一度屈折すると、それを直接屈折と見なされることを覚えておいてください。 そのため、 Refract Limit を0に設定しても、まだ光線の屈折が見られます。 しかし、シーン内のほとんどのオブジェクトは、最低でも2枚のサーフェスを持つので、その光源と直接屈折が最終レンダリングではあまりわからないことが多いです。

屈折の最大数を超えた時に起きる事を制御するには、 At Ray Limit を使用します。

Diffuse Limit

ディフューズ光線がシーンを伝搬できる回数。

Reflect LimitsRefract Limits と違って、このパラメータは、シーン内の全体のライトの量を増やし、グローバルイルミネーションの大部分に寄与します。 このパラメータを0より大きく設定すると、Diffuseサーフェスは、直接光源に加えて、他のオブジェクトからのライトも蓄積します。

この例では、 Diffuse Limit を上げて、最終画像の見た目に劇的な効果が出ています。 現実的な照明環境を模倣するには、 Diffuse Limit を上げる必要があることが多いです。 とはいえ、ライトの寄与度は通常ではDiffuseバウンス毎に小さくなるので、 Diffuse Limit を4よりも大きく上げても、シーンでの視覚的な忠実性の改善はほとんどありません。 さらに、 Diffuse Limit を上げると、ノイズレベルとレンダリング時間が劇的に増える可能性があります。

Volume Limit

ボリューム光線がシーンを伝搬できる回数。これは Diffuse Limit パラメータと同じように動作します。

Volume Limit パラメータを上げると、よりリアルなボリューム効果が得られます。 これは、特にボリュームの一部のみが直接照明を受けている状況で顕著です。 さらに、ボリュームオブジェクトが他のオブジェクトからの間接照明を受けるためには、 Volume Limit パラメータを0よりも大きく設定しなければなりません。

Volume Limit を0より大きい値に設定すると、Fogボリュームは、ボリュームを通過するライトから、あなたが求めている独特の光の散乱を行ないます。 しかし、 Diffuse Limit と同様に、一般的には、ライトの寄与度は、光線が跳ね返る度に小さくなるので、4より大きい値を使用しても、目で見てわかるほどに現実的な画像になるとは限りません。

また、このパラメータの値を上げると、ボリューム画像のレンダリングに費やされる時間が劇的に増える可能性があります。

Opacity Limit

光線が多くの透明なサーフェスを通過したり、ボリュームを通過した時に、累積不透明度を計算します。 この累積不透明度の値がOpacity Limitを超えた時に、Mantraは、このポイントを超えたすべてのサーフェスが不透明度であると想定します。

このパラメータは、Reflect LimitとRefract Limitの両方と似た挙動をしますが、単に光線が通過したサーフェスの数ではなく、累積値に作用します。

この例では、各グリッドに不透明度が0.1のシェーダが割り当てられています。 この場合では、“透明”が不透明度100%未満のオブジェクトを参照していて、透明な見た目になる屈折オブジェクトを含んでいないことを覚えておくことが重要です。

この例では、左側の球は、不透明度が0.5で屈折がありません。 右側の球は、不透明度が1で屈折があります。 Opacity Limitは、屈折度に何も影響を与えておらず、不透明度の値が1未満のオブジェクトにのみ影響を与えていることがわかります。

Opacity Limitを下げれば、レンダリング時間が少し短く(1 - 5%)なり、低い値にすると、カメラが動いたり、アニメーションが進んだ時に帯か何かの画像の乱れが発生することがあります。 これは、特に煙のシミュレーションで不透明度の値が常に変化する箇所で顕著です。

Opacity Limitのデフォルト値は、非常に活動的で、この値を変更する時は、注意して変更し、アニメーションシーケンスのフレーム範囲でその結果を調べてください。

Color Limit

間接ソースから返すシェーディングサンプルの許容最大値。 PBRを使ってレンダリングする時、そのパスの合計のイルミネーションも制限されます。

Physically Based Rendering(物理ベースレンダリング)では、極端に明るい間接光源のサンプリングが不足した時に、カラーに“スパイク”が起きる可能性があります。これは、最終レンダリング画像に“蛍”のような結果が生じ、非常に高いサンプリングレートを使わないと除去するのが非常に難しいです。

この例では、12×12ピクセルサンプルでさえも“蛍”がまだ残っています。Min/Max Indirect Ray Samplesの設定を調整すれば、このノイズを除去することができますが、代わりにレンダリング時間が増えます。

Color Limitパラメータの値を下げれば、それらの間接サンプルのカラー値が制限されるので、“スパイク”を回避することができます。

Color Limitを下げることが、サンプリングレートを上げずに“蛍”を除去する効果的な方法です。 しかし、間接照明の値を制限するということは、シーン内のライトの量を全体的に減らすことになります。 これは、特に間接ライトで大部分を照明しているシーンで顕著になります。

At Ray Limit

レイトレースの制限に到達した光線のMantraによる扱い方を制御します(例えば、 Reflect Limit または Refract Limit )。 この例では、 Refract Limit が2に設定されています。

At Ray LimitUse Black Background に設定すると、その制限に到達した後は単にブラックをレンダリングするだけです。 これがデフォルトの設定で、ほとんどのシーンで動作します。なぜなら、 Reflect Limit または Refract Limit が到達しそうにないからです。 しかし、レンダリングした画像でその制限が顕著なシーンでは、そのブラックのカラーは非常に顕著になり、シーン内のカラーで目立ちます。

この場合には、その効果が回避されるまで制限を上げるか、または Use Direct Lighting as Background Color オプションを使用してください。 これは、ブラックカラーを直接照明、例えばEnvironment Lightで使用しているカラーや画像で置換します。

Environment Lightの設定がこのパラメータに影響を与える方法に関する詳細は、ライティングを参照してください。

レンダリング

Mantraユーザガイド

基本

ライティング

次のステップ

導師レベル

他のレンダラー