modoでEmberGenのシミュレーションをレンダリングしてみました。
EmberGenはGPUベースのリアルタイムのボリューム流体シミュレーションソフトです。JangaFXのサイトにはEmberGenで作成されたシミュレーションデータがいくつか公開されています。今回はガソリン爆発のサンプルをmodoでレンダリングしてみた。
https://jangafx.com/software/embergen/download/free-vdb-animations/
EmberGenのシミュレーションは90°回転した状態で読み込まれるのでVDBアイテムを回転して位置を調節してます。
VDBファイルを読み込む場合は0フレーム目のファイルを選択します。途中のフレームのファイルを選択して読み込むと、選択したフレームからシミュレーションが再生されます。
VDBをレンダリングする場合は、Volumeの「ボクセルソース」にVDBを接続します。
質感はGradientを使用してルミナンスを設定しました。Gradientにはmodo 10.2からFluid関連の入力が追加され、Fuel、Fuel、Temperatureを細かく制御できるようになっています。
最初にデフォルト設定でレンダリングしたとき、ボクセルグリッドの四角形状やフリッカーが目立ってました。VDBの「ボクセルフィルタ」を設定したら少し軽減された気がします。
フィルターなし。
フィルターあり。
ボクセルフィルターの比較、上がフィルターなし。フィルターを使用するとボリュームの密度が変わってしまいますが、フィルターを使用すると細かなノイズのようなボクセルが軽減されるように見えます。
同じデータをArnoldでレンダリングしたもの。Arnoldはフィジカルベースのボリュームシェーダーを搭載しているので、少ないパラメータで見栄えのよい煙や炎の質感を作ることができて便利です。レンダリングも速い気がします。
modoとArnoldのレンダリングを比較、上がArnoldのレンダリング。
modoはボクセルグリッドが目立ちます。Arnoldのボリュームシェーダーにはボクセルの補間オプションがあって、煙の表面を滑らかにすることができるのですが、残念ながらmodoには補間のパラメータがありません。
また、modoのボリュームは透明に近いボクセルを省略してレンダリングしてるような印象を受けます。画像右ではフレームを間違えてるのかと思うほど薄いボリュームがレンダリングされていません。VDBのGL表示は薄い部分も確認できるので、ボリュームレンダリングを高速化のための工夫なのかもしれません。
EmberGenのシミュレーション結果をmodoで使用することはできますが、レンダリングの品質についてはEmberGenの設定を含めて確認する必要がありそうです。
EmberGenはOctaneRenderと提携を発表してるので、Octaneでどのように活用されるのか気になりますね。