[Custom Build] Blender Fracture Modifier

(tungee) #1561

Thank you Martin for oyur explanation!
DO you have a new osx build aroundto test this function?

(Gilles Charbonneau) #1562

I would like to make a feature request, the ability to add different selection group for X, Y and Z for the splinter function, this way it would be possible to add splinters on all axis for a wall frame without having to separate the wall to different parts, I think it would play better with constraints that way!

Here is a frame wall example!

(jensverwiebe) #1563

New Linux dev build:

Branch: fracture_modifier
Revision: c381b3f
Submodules: locale 1bbc9bd addons bd60e89 tools 51e0705
OS: GNU/Linux, Architecture: x86_64, GLIBC: 2.19
Builddate: Do 8. Mär 21:39:53 UTC 2018
Filesize: 103613128 byte
Sha256sum: 3bf4815e4ad9c0c14774c03dcebe0c8c54c099a0f678896b594f3df66f93f1ba
URL: http://www.jensverwiebe.de/Blender/blender_fracture_modifier_linux64_latest.tar.xz

- added vertexgroup to influence metaball radii 
- dropped fermi gpu ! ( sm_20, sm_21 )
- i switched to cuda 9.1 thus we get 8% faster render


(robertzaku1) #1564

there is a bug i found today. Enable Dynamic (WIP) Mode, try to close rigid body and blender crashes immediately. Thanks

(Kai Kostack) #1565

New simulation performed within 24 hours thanks to BCB & Fracture Modifier:

(Kai Kostack) #1566

Now you can finally learn how to do physically plausible simulations of structures using BCB + Fracture Modifier as we have released a bunch of tutorials including the source files of the building in this video.

Check out our blog post for direkt download links:

Or find everything also in the BCB repository on GitHub in the “doc” folder:

(JTA) #1567

Woot woot! Ya baby! Thanks Kai!

(JTA) #1568

Did you come in to our freenode chat and mention it? If not could you please leave a little more information and maybe even a test file? Thanks.

Keep in mind the Dynamic Fracture mode was never completed and only worked in specific ways IIRC from the last time I talked to Scop about it. That is why it is marked WIP. But still, please leave more info and possibly a test file. Thanks.

(turb0) #1569

Hey, im on the current mac version, and its been crashing alot lately, primarily when i have tiles, as in individual messes arranged in a 2 dimensional array. like a tile floor, but as one object.

i’ll uncheck uniform, and check the split mesh into islands checkbox, so i can use the original mesh data of my tiles for constraints.
and alot of time, it will crash right after i refracture it with more data(particle system), or even i’ll set up an object to be animated and blender will just crash right there after i set the keyframe o.O

i’ve had the terminal open and what ive usually been seeing is “Segmentation Fault:11”.
i have a crash report and i can even provide an example file since its been happening so much xD other than that, i love your build, ive made fun plastic deformation simulations with it :]

(scorpion81) #1570

Hmm, could you please post a link to your testfile here ? In case you just want to generate the single islands, just uncheck all sources and do NOT check Split shards then… but you mentioned you wanted to fracture further… with particles… hmmmm. Particle stuff is always a bit “crashy” imho, but i need to take a closer look to the test file.

(scorpion81) #1571

Hi, sorry for the long answer delay… i needed to take a break for a couple of weeks. Hmm imho it would be not so simple to use vertexgroups for different settings like splinter directions… (because vertexgroups are not necessarily 1:1 mesh islands. instead i was thinking something like “autosplinter”, which detects the maximum local axis of each island and uses it as splinter axis… Not so easy as well, but i need still to think a bit about this…

(Gilles Charbonneau) #1572

Thanks for the reply, and no worries, I just think it would be useful to be able to address the different axis of a construct, especially for wood, since we would normally create longer shards to get a realistic effect, which requires a direction, the alternative would be to split the model in 3 different parts and apply a different simulation for each!

The fracture branch is the Blender release I use for all my work now, the fracture modifier is basically as good as the Houdini solvers, but easier to set-up, great work man!

(JTA) #1573

Nice. Ya, I’m here in SoCal/Hollywood and I hear the same about Houdini’s fracturing. Maya’s built in fracture tool is worthless and just eats time if you try to do anything with it. C4D actually updated their fracturing tool. It looks like they took inspiration directly from FM and are still trying to catch up with us in most ways IMO.

Ya, when you use FM instead of the official blender build you get some additional optimizations for other things also like Bullet physics. I have it hidden in the documentation but you don’t even need to fracture anything to use Scorp’s advanced constraints system to do some really cool stuff. Basically just set the shard count to 1. Then there’s Kaik’s Bullet Constraint Builder addon which does some additional materials based calculations and also has some awesome constraint tools including using external mode.

Don’t forget if you use Jen’s Linux builds you get some great speed optimizations. And he also has done some version and CUDA compatibility adjustments for studios to not have to upgrade their distro. I actually get a faster operating FM in some ways with Jen’s Linux build in a VirtualBox Linux guest on a Windoze host than the native Windoze version.

I’m working on updating the FM pie menu and slowly working on some additional changes to the helper addon to improve workflow even more. Kaik’s working out the algorithm for multipass FM physics which will be awesome. So thanks for your support and feedback. We are hard at work making even more improvements that directly benefit the users in ways other than just fracturing.

Fracture ON!

(MatteCrystal) #1574

Anyone know how to execute the fracture modifier on multiple objects at once.

I was making a keva tower that had it so the bricks could individually shatter. So i made one brick, set up its fracture settings and hit execute fracture. I then made duplicates of this item to make a tower out of blocks but each duplicate doesn’t have the fracture executed on it. not a huge deal if I could select them all and fracture them individually with one button click, however, I don’t know how to do this.

If i did select multiple once and hit execute fracture it seemed to be attempting to shatter them all as a super complex object or something since the fracture process lasted hours and then blender eventually crashed. So instead I ended up individually selecting and fracturing each brick which took maybe around 30 mins. Most of that time was spent selecting the bricks and hitting fracture. (the fracture itself only took about a second per brick)

(scorpion81) #1575

Hmmm, how many keva planks did you try to fracture at once with the multiple select method ? When dealing with 1000s of objects, blender can become very very slow (in general). How many shards did you use per plank ? (would be interesting to know, maybe there is somewhere a hidden performance bottleneck). As workaround, if you want to apply the same fracture pattern on the entire tower, you could join everything, select “Split Shards to Islands” and fracture it. This way the tower shards will internally be decomposed to their individual islands, means if one bigger shards contains parts of multiple keva planks, it will fall apart into its original planks as well (additionally to shattering).
Theoretically selecting multiple FM objects and hitting execute fracture “should” work… but if you have a blend or more exact steps to reproduce the crash and / or slow performance, please post them here.

Edit: tested an array modifier of 500 cubes, stacked in Z-direction (which should mimic a keva plank tower), and fractured it with 4000 shards. (just array mod + FM). Took 23 secs to fracture and further 10 secs to split to islands, generating ~7200 islands.

(scorpion81) #1576

Regarding the multi-object solution… it is possible in FM 2.79a to connect different fractured objects with external constraints now. So you can just make one object for y-direction splinters, and one for z-direction and fracture both. Then in the helper addon, select both FM objects and press “Connect” under Automations -> Combination. This will create another helper object, which maintains the constraints settings for constraints which “cross” the object border. You should be able to connect even more than 2 objects this way. The constraints will be built there where the objects “touch” (you can set the connection radius to say 0.1 and connection mode to vertex, or keep radius like 1.0 and keep the mode “centroid”).
Each FM object will still maintain their own settings in their constraint sections.
To setup the connection manually, you can put the desired FM objects into a group, then create another helper object manually. Put an FM onto it, disable all sources. Specify the Group in “Sub object group” and check “Constraints only”… also enable "Use constraints in the helper object. But note, its easier to let the addon do the boring automation work :slight_smile:

Fractured Example of your frame wall: https://drive.google.com/open?id=1YMR2IEA_3tYFApfepVXY0KeHsS8NjwMl (just Alt a to play the animation)

Edit: the external constraint feature was already implemented, and is probably more useful than attempting to have multiple fracture settings inside one object.

(MatteCrystal) #1577

hmm, I decided to retry to fracture them all at once again and it worked this time. However, later on, I was messing around and made a new fracture preset. this one had 5 shards instead of the 10 I had before. I then selected 4 top blocks and hit execute. this caused blender to freeze up and I ultimately had to force close.

So my thoughts initially were maybe it’s an issue when you’re messing with presets as i remember i was doing the same when i first tried to do the big multi-fracture. However, upon reloading the file i once again couldn’t reproduce the problem.

Anyways, something I have noticed is if you make fracture presets, lets say keva1 and keva2 for example. And put the keva1 preset on 10 blocks and execute. then you click one of those 10 and set it to use keva2 and execute. All blocks you click on now will have their preset set to keva2, however, the actual settings will still be set the same. so if you clicked on one of the 9 blocks that should have the keva1 preset, its settings will still match the keva1 settings but its selected preset will display as keva2. and if you want to change it to keva2 you’ll have to select the keva1 preset (which will change nothing) and then click back to the keva2 preset. at this point the keva 2 preset will actually show and could be executed.

Also i have 2 questions

So the fracturing of all items seems to work most of the time. however, the way my tower is made is by putting the fracture settings on one object and then duplicating it to make the tower. So if i made my tower and then realized i wanted to change my fracture settings and copy it to each object all at once how would i do that? The making of a new preset and then selecting multiple objects and hitting execute fracture only performs the fracture based on each objects individual fracture settings.

My next question would be is there a way to execute the fracture on all objects but at the same time and automatically assign a different seed to each. (This one isn’t as important as the last but would be a nice feature)

(Kai Kostack) #1578

Here are my latest videos utilizing the Fracture Modifier :slight_smile:

(scorpion81) #1579

Hmm i tested that preset thing with multiple objects and the cloth modifier as well (which also has presets). So i put a cloth modifier onto an object, selected a preset. Then i added a cloth modifier to another object, and it already had the same preset selected as the first one… hrm seems a limitation in blender in general. (I only made use of the preset system as is in the FM).

And could you show an example of your tower file ? I still dont get it why you cannot just join all planks into 1 object and fracture it with the help of split shards to islands. Or do you want to achieve a certain “look” of the fracture ?

The fracture modifier was mainly designed to work on one or a few individual objects, where each object can consist of (relatively) many shards. Individually fracturing a lot of objects seems to be very tedious.

And split shards shatters the whole joined object with the given amount of shards, and after that decomposes the shards to their original islands. e.g. if you have a brick wall, and a lower amount of shards (say 10) you normally would get 10 islands where each would consist of multiple bricks still. with split shards this will fall apart further into each individual brick. For the keva tower (which consists of many planks, and each plank is a single meshisland) you could apply split shards to islands (+ fracturing) and each shard would look individually different. Its not like the same pattern would be applied to each plank and every fractured plank looks the same, its the other way around.

Edit: example file https://drive.google.com/open?id=1K6C3aEWk_Vs-AMqBB9mgXiqxgT4iTraK

(Gilles Charbonneau) #1580

Thanks for the tip, and the file, will look into it!