はじめに
Paraviewはコンピュータシミュレーションの結果を可視化することが可能なソフトウェアです。
フリーソフトであるため導入のハードルが低く,論文の学会発表の図やアニメーションの作成にも(少なくとも私が見る範囲では)よく使用されています。
基本的には科学的データに基づく可視化であるので,論文や学会で使う図はシンプルで誤解を招かないように作られるべきです。しかし一方で,一般・大衆向けに説明をして理解や関心を得るために,ある程度「綺麗な」図を用意する必要がある場面も往々にして存在します。
簡単に言えば,水の流体計算の結果を示すなら赤色よりも水色で示す方が直感的であり,単色ではなく透明感のある色で示すとさらに直感的にわかりやすい,ということです(突き詰めると,この動画のように現実の映像と見紛うレベルでシミュレーション結果を表示することもできます)。
さて,Qiitaには少し古いですがこんな記事があります。
この記事では,元データをparaviewで一度可視化して3Dデータとして保存した後に,その3Dデータをblenderで変換して,変換したデータをさらにUE4で編集することで綺麗な可視化を行っています。
記事を読む限りでは,高い自由度で可視化できるので,今回の目的を達成するための一つの王道手法となると思います。
が,個人的にはいくつか課題も感じました。
① 記事で使用されているBlenderのバージョンがもはや古くなっているためか,記事の通りやっても手元で再現できなかった
② UE4をEPIC Games経由でダウンロードすることが,職場の環境的に厳しい。
③ 手順が多くて正直面倒
上記記事ほどクオリティが高くなくてもいいので,paraview単体でもっと簡単に綺麗な3D可視化ができないか?というのが今回の主題です。
まず結論
超簡単にできる。
やり方
今回使ったparaviewのバージョンはwindows版の5.10.0です。
サンプルデータとして,下図のような球を用意しました。
これを「綺麗に」してみます。
この時重要なのが,3D物体の表面が描画されていることです。
描画方法はContourでもClipでもIso Volumeでも構いません。
Pipeline Browserで表面を描画しているアイテムを選択し,画面左下のPropertiesで次のように操作します。
① Searchボックス右の歯車を押し,詳細設定を行えるようにする
② Ray TracingのScale ModeをAll Approximateにする
③ 同じくMaterialを,好きなものに設定する (下画像ではMetal_Gold_brushed)
これだけだとまだ変化はありません。
次に,Propertiesの一番下まで行き,Ray Traced RenderingのEnable Ray Tracingにチェックを入れます。
その後,
① Back EndをOSPRay pathtracerにする
② Samples Per Pixelを5にする
③ Denoiseにチェックを入れる
④ 必要であれば背景色を適宜変える
ここまで操作すれば,下図のような可視化ができていると思います。
あとは,見た目がいい感じになるように調整していきます。以下は一例。
操作は以上で,paraviewだけでとても簡単に「綺麗な」可視化を行うことができました。
さいごに
今回の記事はこちらのページを参考にしました。
正直に言えばこの記事よりも詳細に説明されているので,参考にしてください。