Preserving topology with VDB Fracture?

173 views
Skip to first unread message

Chris Allen

unread,
Aug 17, 2015, 7:21:32 PM8/17/15
to OpenVDB Forum
Hello,
I'd like to use VDB Fracture (mostly in Houdini), and preserve the original topology as much as possible, so it keeps original polys if they're not at the cutting interface.  It appears the closest I can come to this is to feed the source geometry into the second input of the Convert VDB SOP in order to transfer attributes from the original geometry, but it looks like the resulting geometry is still based on the intermediate levelset's grid cells.

Is it possible to fracture geometry with the OpenVDB library and still preserve the original topology except at the cuts?

Thanks...

Ken Museth

unread,
Aug 19, 2015, 2:22:53 AM8/19/15
to OpenVDB Forum
Hi Chris,

The technique you're describing is probably the best one that our toolset offers - by feeding back the source mesh as a reference to the Fracture SOP you can greatly improve the seamless fracture, but it is still generated from the volume and not the original mesh. What you're proposing (fracturing the source mesh directly) is very difficult (if not impossible) for all but the simplest fracture techniques (e.g. with voronoi cells). It basically amounts to performing CSG operations on meshes which is extremely difficult and virtually impossible when performing recursive operations (which is typical during fracture generation). Long story short VDB fracture uses a hybrid approach where CSG is implemented as volumetric operations on narrow-band level set, meshed and finally improved using the source mesh as a reference.

-K

Chris Allen

unread,
Aug 19, 2015, 1:45:07 PM8/19/15
to OpenVDB Forum
Hi Ken,
Ok that makes sense.  I'd heard a rumor from someone that OpenVDB's fracture would preserve topology if you fed it the source, but that's not what I was finding.  I figured this would be a hard problem to try to solve, so it's reassuring that you agree.  :)  And thanks for confirming that what I'm seeing is in line with the implementation.

Thanks...

chris

Reply all
Reply to author
Forward
0 new messages