...
ボリュームレンダリングは、あらゆるHoudiniパイプラインの重要な部分であり、RenderManは機能と改良を加え続けています。 PxrVolumeマテリアルは、シングルまたはマルチスキャッタエフェクトを使用して、素早く正確な結果を生成するように設計されています。
Houdiniでチューニングする場合は、単純にVDBファイルを参照するか、変換がレンダリング内で実行されるようにすることができます。(RenderManに取り込むためにはOpenVDB形式である必要があります)
...
Houdiniでは、RenderManが想定しているフレームレートとは異なるフレームレートでボリュームをエクスポートすることがあります。以下のドキュメントのヒントに注意してください。 速度ベクトル値は、フレーム全体に対する相対値であることが期待されます。1秒あたりの単位で測定されたベロシティデータを扱う場合、正しい画像のために1秒あたりのフレーム数(例:1/24.0)でデータをスケールする必要がある場合があります。 |
PxrVolumeは、以下のような複雑なボリューメトリックエフェクトのレンダリングに使用できるマテリアルです。
...
PxrVolumeのユーザーは、一様ボリュームと不均一ボリュームの違いに注意する必要があります。一様ボリュームは密度と色が一定であるのに対し、不均一ボリュームは密度や色が変化します。不均一ボリュームは、一様ボリュームに比べて、一般的にレンダリングに時間がかかります(ノイズも多くなります)。
PxrVolumeは、「純粋な」ボリュームを扱うために最適化された、専用のボリュームシェーダです。PxrVolumeは、異なる種類の媒質の境界での屈折や反射などのサーフェイス効果を扱うことができないため、濁ったガラスや水面などのレンダリングには使用できません。 サーフェス効果と限られたボリューム効果を同時に処理できるシェーダを探している場合は、PxrSurfaceのシングルスキャッタリングパラメータを参照してください。 |
Basic Workflows
Constant fog
...
雲の密度を OpenVDB ファイルのようなファイルにベイクし、OpenVDB ファイルの密度プロパティの名前を PxrVolume Density Float PrimVar パラメータで直接使用するのが、雲自体をモデリングする一般的な方法です。雲は通常すべての光を反射するので、単純に Diffuse Color を (1, 1, 1) にしておけば十分です。雲自体の複雑な光の振る舞いを表現するためには、PrimaryおよびSecondary Anisotropyの設定に加えて、Multiple Scatteringが必要です。以下の異方性の設定は、実際の雲の複雑な散乱挙動に対する物理学的な近似値を反映しています。多重散乱が使用されるため、samplesパラメータは使用されず、1に設定することができます。最後に、雲自体に光源がない場合、等角サンプリングでは何のメリットもないため、Equiangular weightは0.0に設定できます。(一方で、嵐のような天候の場合、稲妻の閃光をシミュレートするために雲の中にライトが設置されている可能性があるため、等角サンプリングは有益であると考えられます)。
ボリューム内の散乱は、個々のディフューズおよびスペキュラートレースの深さではなく、選択したインテグレータのMax Path Lengthパラメータによって制御されることに注意してください。この点については、下記のMultiple Scatteringの項で詳しく説明しています。 |
Advanced Workflows
Crepuscular Beams
...
Equiangular sampling(等角サンプリング)は、ボリュームの内部または近くにあるライトで照らされたボリュームの収束性を向上させますが、ライトが遠くにある場合はボリュームの収束性が低下します。等角サンプリングのデフォルト値(0.5)は、ほとんどのシーンで許容範囲内で動作する妥協点です。ボリュームの近くに光源がないことがわかっている場合は、レンダリングを高速化するために等角度を0.0に設定する必要があります。バージョン21.5以降では、multiple scatteringのvolumeに対してEquiangular samplingが無効になっています。
等角サンプリングでは、サンプル数が少ない場合、ボリュームαが負の値になることがあります。これは、このパラメータの仕組みによる副作用です。解決策としては、Equiangular Weightを0.0に設定するか、より多くのサンプルを採取することで、正しく正の値に平均化することができます。 |
Anisotropic(非等方性)ボリュームは、サンプリングの性質上、等方性ボリュームよりも収束が遅くなる傾向があります。
...
データによっては、ボリュームコンテナのdisplacement boundアトリビュートを拡張して、ボリュームの任意の部分の最大ベロシティを包含することが必要な場合もあります。
21.5+では、モーションブラーがかかったボリュームにディスプレイスメントバウンドを追加することが推奨されていますが、必須ではありません。現在、このデータを自動的に取得するにはコストがかかります。クリッピングが発生している場合は、このパラメータを追加する必要があります。 |
速度ベクトルの値は、フレーム全体に対する相対値であることが期待されます。1秒単位で計測された速度データを扱う場合、正しい画像を得るためには、1秒あたりのフレーム数(例:1/24.0)でデータをスケーリングする必要があるかもしれません。
...