見出し画像

Houdiniメモ.07「OpenVDBというボリューム」

さつき先生のゼロからHouidiniを、メモってます。
(ほとんど、さつき先生が言っていることを書いています)

さつき先生のTwitter(X)



OpenVDBとは?

OpenVDBとは?
OpenVDBといえば雲や炎、水などのグリッドベースのボリュームメトリックシミュレーションの結果をやり取りする際に使ったり、レンダリングの効率化に使ったりすることがあるかと思います。

実はそれ以外にボリュームとしてジオメトリを扱うので、ブーリアンを行ったりするのに最適な構造にトポロジーを意識せずに行うことが可能になります。

CGSLABでは高解像度な3Dスキャニングを行っている関係から、リトポまわりも重要な要素として研究を行っています。
ただ自身がモデラーではないのと、CGSLABではプロップのスキャニングに注力している部分で、使いやすいオートリトポツールを求めていました。

https://site.cgslab.info/archives/319

OpenVDBとは?
高密度で維持しなければならなかったVoxelを必要最小限で維持することができるため、非常に高速な処理を可能としています。


(高密度で維持しなければダメだった、
Voxelくんを最低限で維持することができるよ!(低ポリになる?)
さらに、低ポリになったから処理も軽くなるよ!!
ってことらしいです(多分)

https://cgworld.jp/regular/201804-hcb-087.html


ボリュームメトリック…の説明↓
(Houdiniにおける「ボリュームメトリックシミュレーション」は、3次元空間内の「ボクセル」(3次元ピクセル)の値を保存し、それを用いて現象を表現するシミュレーションのことを指します) <🫠??


これもオススメ↓ OpenVDBのことがわかる(気がする)




1:43「何が効率的なの?」「OpenVDBを使う理由は?」


そもそも効率化をしたいという場面がない場合効率化する必要性はないので
元のボリュームの効率が悪いところを紹介します


このボリュームの何が効率が悪いかというと

こんな感じの細な長い物があったとして、
ベクターの画像をラスタライズするみたいな感じで3dのボリュームにする、らしいです(?)

実際にやると、ボリュームはこんな感じで作られます。

細長い棒はこんな感じで作られているってこと?

ボクセルのサイズを一辺が0.01でここに、ぎっしり敷き詰めると、
「0.01」になる、ボクセルの数は「128万」くらいになる。

ただ斜めの直方体をラスタライズしたいだけなら、別に角ってデータを、
保存する必要はないんじゃない?ってことをVDBが解決してくれる。

つまり、ボクセル数が減って処理が軽くなったよ!ってこと(だと思う)


まとめ↓

VDBを使うと、ただの直方体じゃないボリュームを形作ることができる。


わかりやすい!! ↓

見えない部分はカットして軽くしよう!ってこと?


4:30 プログラマーにとって
効率的に保存ができて操作もしやすくて、OpenVDBがアカデミー賞受賞したらしいです、他のソフトもこれを使ってるよ。



5:25 なんで使わなかったの?

なんで効率的なボリュームを使わなかったと言うと、

1つ目
ボリュームというものを理解するのに、わかりやすかったのと、

2つ目
Houdiniのシュミレーションに時々使われるから

6:04 SDFという概念

bdbというスパースボリューム、密ではないボリュームが、どんなふうに役立つかを紹介する。
PDBのようなボリュームを利用すると非常に効率が良い例として
「SDF」がある


いいなと思ったら応援しよう!