Pyro FX を Mantra でレンダリングする際にノイズを低減する方法を説明する。
これは、Houdini Advent Calendar 2016 の 6日目の記事です。
使用したHoudini ビルド: 15.5.673
1. 元シーン作成
- Houdini を起動、Create シェルフの Torus を Ctrlキーを押しながらクリック。
- トーラス形状 (torus_object1) が原点に作成される。
- torus_object1 を選択したまま、Pyro FX シェルフの Flames (一番左) をクリック。
- ノードネットワークには、シミュレーションネットワークのノードである pyro_sim とレンダリング用出力ノードの pyro_import の二つのノードが出来る。再生すればトーラス形状より炎が上がるのがわかる。
- ビューポートのカメラ位置を自分の見たい位置に調節し、Lights and Cameras シェルフの Camera を Ctrl キーを押しながらクリック。
- cam1 が出来る。これがレンダリング用カメラになる。
- パラメータビューで cam1 の View タブに行き、Resolution を 1024 x 1024 (または自分の使いたい解像度) に設定する。
- ビューポート上で 'D' キーを押し Display Options パネルを表示、下記の変更を行う Pyro ボリュームが見易くなる。
- シーンファイルを保存、$HIP を決定し、レンダリング画像およびキャッシュファイルの保存先を決める。
- このファイルをもとにレンダリングの調整を行なっていく。
2. レンダリング
- シミュレーションを再生し、64フレーム目に行く。
- このフレームで画質の調整を行なう。
- Render View へ行き、Camera を ROP Camera から /obj/cam1 に変更、Render ボタンをクリックして、レンダリングを一度実行。
- この結果、/out/mantra_ipr というレンダリング設定ノードが作成される。
- /out/mantra_ipr と表示された脇のボタン () をクリック、このノードのパラメータを別ウィンドウで開く。
- Camera 指定の直下にある Override Camera Resolution トグルをオンにして、Resolution Scale を "1/2 (Half Resolution)" とし、以後のレンダリング解像度を 512x512 で行なう。このレンダリング結果がこちら。左が RGB で、右がアルファ。
Preview をオフにした場合、レンダリング時間2秒。よく見ると炎の周りの煙がピクセル化されていて荒い。 - Render View 下にある "Snap 1" となっているテキストフィールドを、"default" などと書き換え、左側のカメラアイコンをクリック。
- これで今のレンダリング画像がメモリに保存された。左側のスライダで保存した "default"と次にレンダリングを行う "Active Render" とで表示の切り替えが可能。
- mantra_ipr ノードの Rendering タブ以下、 Sampling タブに行く。
- 炎のような半透明のボリューム形状のレンダリング精度に最も関わるパラメータは、以下の二つ。
- Volume Quality (デフォルト値: 0.25)
- Stochastic Samples (デフォルト値: 4)
- Stochastic Samples の値を 8 にする。
レンダリング時間は同じく2秒。 - default2 となった新しい名前を stosample8 などとして、カメラアイコンをクリックして保存する。
- これで、default, stosample8, Active Render (stosample8と同じ) の3つをスライダで切り替えることが可能。
- Stochastic Samples の値を 16 にする。
- レンダリング時間は3秒。Stochastic Samples が8の場合よりも特にアルファがスムーズになったことがわかる。
- stosample9 となった新しい名前を stosample16 などとして、カメラアイコンをクリックして保存する。
- これで、default, stosample8, stosample16, Active Render (stosample16と同じ) の4つをスライダで切り替えることが可能。
- Volume Quality を 0.25 から 0.5 にする。
- レンダリング時間は4秒。RGB上でよりスムーズになったことがわかる。
- Volume Quality を 1 にすればさらにスムーズになる。ただし、レンダリング時間は8秒。
まとめ
- Pyro ボリュームだけの場合、Min/Max Ray Samples, Noise Level などはあまり画質に影響を与えず、Volume Quality と Stochastic Samples が最も影響を与える。
- Volume Quality が RGB に影響
- Stochastic Samples が アルファに影響
- Pyro ボリュームをそのままレンダリングしている場合であれば、上記二つはレンダリング時間に大きな負担をかけない。
- しかし、Pyro をボリュームライトとしてレンダリングする場合、上記のパラメータを高い数値にしておくと、レンダリング時間に大きく跳ね返ってくる。 これに関しては、また次回。
最終更新: 2020-12-23
0 件のコメント:
コメントを投稿