Jump to content

Voronoi for Boolean?


8BitBeard

Recommended Posts

I want to break off the other 'shell' of a building using a voronoi pattern. However, while the end result kinda works it is very unstable and error prone. Maybe someone here has a better approach. Here is what I am doing:

 

1. I select the prims and apply a voronoi. I cluster the pieces into larger groups. At this time this is only a surface as I have no insides.

vorn_01.thumb.png.1f8642880697b42024728fd679199735.png

2. I delete all other clusters but one random one.

vorn_02.thumb.png.84a060c11cca454ef1ad60fb5a0aca63.png

3. I extrude the cluster along primitive / egde normal. Here the biggest problem occurs - depending on the complexity of the voronoi, if I extrude it too much I get intersections which cause problems in the next step.

vorn_03.thumb.png.86c045c655bfe8dc9fc00eb95fb8c658.png

4. I use a Boolean SOP to substract the extruded cluster from my original building. This example looks fine, but as you can imagine, if I have intersections with the cluster the whole boolean goes bonkers. Any recommendations for a different, more flexible and stable approach?

vorn_04.thumb.png.c0c344602ed663a6a6b5483a1a499e2a.png

Link to comment
Share on other sites

I'm no expert but pretty sure that you shouldn't be extruding AFTER any sort of voroni or boolean fracture-shatter operation. I'm guessing some combination of tetrahedralizing + boolean and followed by boolean shatter? but other experts should chime in...

Link to comment
Share on other sites

Playing around with extending this so you can get a set of primitives separated from the host shape. Then you could boolean those against the original. The group scatter point selection is linked to a group primitive delete via relative expressions.

ap_voronoi_pre_extrude_fracture.hiplc

fracture_delete.gif

Edited by Atom
Link to comment
Share on other sites

Hey that's a cool approach. Have you actually tried to bool substract the voronoi from the original box? While the initial extrude could solve a lot of problems (so simple, so good!) one of the stupid problems remain - the outer prims of the voronoi match the position of the outer prims on the box, and in some instances they will not bool properly, leaving a shell in some areas. A way to fix this is to add an additional extrude in the opposite direction to not only substract inside the box but to add some safety check to the boolean, but I feel this is not a very clean approach. I'll try some more and keep reporting, you seem to be interested in this as well ;-)

Link to comment
Share on other sites

easy peasy....lemon squeezy..

In my setup...first, you'll see artifacts with the Boolean in the top right corner...there's slivers and isolated verts floating around...nasty.

Now the magic ingredient, enable the Fuse...poof...all artifacts gone...
There was no need to extrude anything, the Boolean treats both A and B as surfaces.

Voronoi_Boolean.hipnc

VoronoiBoolean.jpg

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...