On this page |
概要 ¶
Houdiniにはボリューム固有の品質コントロールがあり、サーフェスとは関係なくボリュームの品質を調整することができます。
以下のレンダリングプロパティの考察では、時々、Mantraノードのパラメータインターフェース内で見つけることができるプロパティの場所(例えば、 Properties ▸ Sampling タブ)を参照しています。 オブジェクトにプロパティを追加(プリミティブに追加することもできます)することで、それらのプロパティの値をカスタマイズすることができることを知っておいてください。 いくつかのプロパティは、既にオブジェクトの Render タブに存在しています。
Transparent Samples(透明サンプル) ¶
Stochastic Transparency ( Properties ▸ Sampling タブ)は、透明なボリュームをレンダリングする時の最適化を行なうことができ、Mantraは、光線をいくつかランダムに送信して、透明なピクセルをシェーディングします。 これにより、非常に透明度の高いボリュームをレンダリングする時のレンダリング速度が速くなります。
しかし、ランダムな透明サンプルの数を増やさなければいけない場合がよくあります。 値が低すぎると、ボリュームに“塩と胡椒”のようなノイズが発生します。 透明サンプルの値を上げるほど、ノイズが減り、ボリューム内のディテールと透明度がより正確にレンダリングされます。
Transparent Samplesのデフォルト値は、1
です。
この値を2
、4
、8
、12
へと増やしていき、品質に違いな出なくなれば、そこで止めます。
高い値(8
や12
)で停止した場合、それよりも低い値で妥協できないかどうか値を戻してみてください。
Tip
透明サンプルを上げれば、サーフェスとは関係なくボリュームの品質が上がります。 サーフェスとボリュームの 両方 の品質を上げたいのであれば、Pixel SamplesまたはRay Samplesの値を上げてみてください。
Transparent samples = |
Transparent samples = |
Transparent samples = |
Note
Stochastic Transparency をオフにすると、時間をかけるだけの価値があるほどに十分な品質になることなく、ボリュームのレンダリング時間が 非常に 遅くなる可能性があります。しかし、透明度の高いボリュームを高いガンマ値で表示させるなら、そのプロパティをオフにしてください。その理由は、 Stochastic Transparency は低い不透明度のサンプルの多くを破棄する傾向があるからです。
品質と速度に関するTips ¶
-
ゆっくりと移動/放出するボリューム(例えば、積雲)をレンダリングする時、GIライトを追加して、フォトンマップをキャシュ化することで、ボリューム内のライトの跳ね返りのレンダリング速度が速くなります。
ライティングを変更したら、フォトンマップを再生成しなければならないことに注意してください。
-
すべてのレンダリングで高レベルな品質設定は、 Pixel Samples です。 Pixel Samplesは、上記のボリューム固有のプロパティ用の 乗数 です。 そのため、Pixel Samplesの値を上げると、ボリュームの品質も上がること(とレンダリング時間が遅くなること)を忘れないでください。
-
Pixel Samplesをもっと使えば、ボリュームのアンチエイリアスとモーションブラーも改善されます。
-
Volume Step RateとVolume Shadow Step Rate( Properties ▸ Sampling タブ)の値を下げれば、ボリュームのレンダリング時間が速くなりますが、より悪い精度でボリュームを再生成します(これらの値を下げると、レンダラーはサンプリング時にボリュームをより大きいステップで計算します)。
-
たくさんの 重複した ボリュームは、Mantraで効率よくレンダリングするための処理が増えます(サーフェス上の大きなディスプレイスメント境界も同様)。
-
ボリュームをもっと正確にレンダリングしたい場合は、一般的に、 Pixel Samples の値を上げるよりも、 Volume Step Rate を上げるほうが良いです。その理由は、ボリュームのステップサイズが小さいほど、レンダリングの精度が良くなるからです。
以下の例では、品質は、ほぼ同じです。 しかし、2番目の例(Pixel Samplesを上げた例)では、シャドウのディテールが消えて、ボリュームがもっと透明になっています。
Pixel samples = 2×2, Volume step rate = 4 |
Pixel samples = 4×4, Volume step rate = 1 |
-
リニアカラー空間(ガンマ値 = 2.2)で作業することを推奨しています。 (詳細は、レンダリングのTipsを参照してください。) メリットは、リニアカラー空間は、暗さを下げて、ノイズが目立たなくなります。
Transparent samples = 1, Gamma = 1 |
Transparent samples = 1, Gamma = 2.2 |
ボリュームからライトを放出する ¶
Volume Lightシェルフツールを参照してください。 このシェルフツールは、選択したボリュームに基づいてジオメトリライトをセットアップします。
Note
単に、発光マテリアルを割り当てて、ボリュームが自身を照明しているだけです。
しかし、実際のライトを使うと、まっすぐな光でノイズが少なく高速で、ロールオフなどのライトコントロールを制御するのに便利です。
また、発光(Ce
)の値は、Diffuseコンポーネントにのみ影響があり、ボリュームの反射コンポーネントには影響を与えません。
Volume Limit ¶
ボリューム用のDiffuse Limitプロパティに相当するプロパティがVolume Limit( Properties ▸ Shading タブ)です。 これは、ボリューム内でのライトの跳ね返り回数を制限することができます。
デフォルトのDiffuse Limitは0
です。
この値は、ボリューム内でライトが跳ね返らないので、ボリュームはその背後にあるオブジェクトからライトを伝搬しません。
例えば、赤い正方形の前に半透明のボリュームがあると、そのボリュームはビューアから見て、現実的な量の赤を伝搬します。
この値を1
、2
、3
、4
と上げて行けば、ボリューム内のDiffuseの跳ね返りが増えます。
これによって、もっと現実的で品質が良くなりますが、レンダリング時間も増えます。
一般的には、この値は4
よりも大きくするべきではありません。
(この値を上げると、伝搬するライトが増えるのでボリュームがもっと 明るく なることに注意してください。0
と1
の差は飛躍的に変わりますが、1
と2
の差はあまり違いが出ません。)
Diffuse limit = |
Diffuse limit = |
Diffuse limit = |
Volume Filter ¶
-
Volume Filterプロパティは、Mantraがボリュームをカメラ空間に変換する時に適用されるフィルターを制御することができます。 このプロパティは、オブジェクト毎に Render タブで利用可能です。
-
“Box”フィルターは、エッジを鋭くします。 “Gaussian”フィルターは、レンダリングするボリュームに帯が生成されるのを回避します。
-
非常に解像度の高いボリュームがあれば、カメラ用にボリュームを“アンチエイリアス”したくありません。デフォルト(
1
の幅の“Box”)を使用してください。 -
他のボリュームに対しては、小さい幅(
1
未満)で“Gaussian”を使用して、帯が見えなくなるまで幅を上げます。
メタボールをボリュームとしてレンダリングする ¶
メタボールは、Mantraででボリュームとしてレンダリングすることができます。メタボールのレンダリングは、ジオメトリオブジェクトの Render タブの Geometry サブタブの Metaballs as Volume チェックボックスをオンにすることで有効になります。メタボール上の任意のPointアトリビュートは、メタボールサーフェスでのPointアトリビュートの補間と同じ方法で、シェーディングポジションに補間されます。
基本的な煙のようなボリュームプリミティブを考慮したサーフェスシェーダを適用する必要があります。
下図では、ランダムに色を付けたポイントカラーアトリビュートを使ってメタボールをボリュームとしてレンダリングしています。