7
$\begingroup$

I have a bunch of objects in my scene that are intersecting each other. Is there any way, without creating a million boolean modifiers on each, to remove all mesh intersections in my scene?

Sort of what my scene looks like

Maybe there's a script to apply a bunch of booleans to every object?

$\endgroup$
12
$\begingroup$

You may use a Direct Union of a BoolTool add on. enter image description here

Activate the add on in User Preferences (Ctrl+Alt+U). enter image description here

Select all the spheres with Shift+RMB, then press Spacebar and type direct union. enter image description here

If you want to separate each object use Linked Flat Faces option. enter image description here

Select one face of the sphere, go to Select-->Linked Flat Faces (or use a Shift+Ctrl+Alt+F shortcut). Increase the Sharpness value in a Tool Shelf. Then press P-->Selection to separete the selection.
enter image description here enter image description here

$\endgroup$
  • $\begingroup$ Is there any way that I can keep each object separate? $\endgroup$ – Michael Payne Sep 10 '17 at 18:19
  • $\begingroup$ I've updated my answer. Please check it out. $\endgroup$ – Paul Gonet Sep 10 '17 at 19:46
  • $\begingroup$ That's great! But I kind of need the objects to be solid. That's why I was going with the idea of using multiple boolean modifiers. My idea is to subtract the intersection from both objects, if that makes sense. Like this: imgur.com/nEH1aNV but without the painstaking hassle of boole intersecting, duplicating, scaling, and the boole differencing both of them from the intersection for each object. This would probably be easier in a more procedural environment like houdini, but I'll be honest, I don't have that kind of money lying around to just throw at software companies lol $\endgroup$ – Michael Payne Sep 10 '17 at 21:12
  • $\begingroup$ I guess it isn't possible without doing it manually in a very time consuming way. Consider hiring a talented python coder :). Also try to ask another question about how to do it by scripting. $\endgroup$ – Paul Gonet Sep 10 '17 at 22:37

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.