02 Operators
今回は、VDBを用いたフローがメインになっています。VDBを扱うためのオペレータは非常に充実しており、全てをここで解説することは叶いませんが、今回登場した中でも特に重要な4つを再度解説します。
VDB from Polygons SOP
VDB from Polygonsは、PolygonからFogまたはSDFのどちらかのVDBを生成することができます。基本的には閉じられているジオメトリであれば、正確で綺麗に変換できます。要は、ボリュームをもつジオメトリである必要があると言うことです。もちろん、サーフェス上に作成することもできますが、場合によっては、上手く作成できないこともあります。サーフェス周辺にしかVoxelを作成しないため、Iso Offsetなどで通常のVolumeを作成するより軽く、より高解像度での作業が可能になります。
VDB Reshape SDF SOP
VDB Reshape SDFは、SDFの形状からDilateで法線方向に膨張、Erodeは法線方向に収縮させることができます。Openは、内側に収縮させ、同じ分外側に膨張させます。これによって、孤立している山や島を消すことができます。Closeはその逆で、穴や谷を埋めることができます。
VDB Smooth SDF SOP
VDB Smooth SDFはSDFの値を平滑化します。例えば、曲率が高い場所はより滑らかに、平面はそのままになります。その結果、凸凹が抑えられ、滑らかなSDFになります。
Convert VDB SOP
Convert VDBは、VDBを通常のVolumeもしくはPolygon、Polygon Soupに変換できます。また、VDBのFog、SDFへClassの相互変換ができます。Polygonに変換する場合、Adaptivityでディテールがある部分は細かく、平坦な部分は粗く、といった細かな設定もできます。また、第2インプットから、NormalなどのAttributeも引き継ぐことができます。
下図は、上記の例で作成したジオメトリです。2つのVDBを使ってマスク処理をしながら変形させたSDFをPolygonにしたものです。このように、2つのVDBを組み合わせるのはVDB Combineだけではなく、マスクを駆使することで、VDBの処理能力は格段にアップします。