Shatter and Destruction Plug-in
Pulldownit is a dynamics solver which allows for the creation of fractures as well as massive rigid bodies simulations. By using its technology digital artists are able to simulate fast and easily the collapse of buildings, cracking surfaces or fracturing any kind of brittle material.
Pulldownit Destruction Workflow in Maya
Shatter It!, Voronoi-based pre-cutting
Shatter It is a pre-cutting tool, it is able to generate jaggy fragments, much more realistic than classic polygonal fragments. it is Voronoi-based because this scheme has showed to be the best mathematical pattern for brittle fracture. Its technology allows to pre-cut a 3D model in hundred of shards in seconds, in addition the fragments generated plug easily in the Pulldownit solver to perform simulation in a fast and stable way.
The current pre-cutting tools in most 3D platform consist basically in clipping planes and fill holes modifiers; this could be enough for modelling purposes, but definitively quite poor for dynamics where you would like to pre-fracture an object in hundreds of shards to obtain believable results when simulating. Shatter It!, the new pre-cutting tool by Thinkinetic, is designed thinking in dynamics needs; it is Voronoi-based because this scheme has showed to be the best mathematical pattern for brittle fracture, its workflow is surprisingly easy, just select a polygonal object from the viewport, input the desired number of fragments and hit Shatter It! button, concavity or holes are not an issue anymore; Its technology is able to pre-fracture a high resolution model with fine detail in seconds. In addition, UV mapping is also supported. Shatter It! introduces different cutting styles, Uniform, Local, Path based, Radial and Wood Splinters. Radial style generates a perfect pattern for breaking-glass-like effects, Path-based style allows for the creation of long dynamics cracks and Local style for creating localized damage on corners and surfaces, besides you can combine all of them at your pleasure by continue cutting the generated shards until achieving the desired look. New Jagginess deformer allows to modify the surface of the fragments, converting flat geometry into rough faces and twisted edges, getting a high-realistic look for stucco, stone or concrete materials. Although Shatter It! tool can be used independently of the rest of the plug-in, Its mayor advantages comes when simulating the prefractured object with the Pulldownit solver; the shards created plug easily in dynamics, also knowing Voronoi scheme generates mostly convex shards, Pdi takes advantage of this fact to speed up the computation of fracture.
Built-in Dynamics & Fracture solver
The technology of fracture inside Pulldownit is absolutely new and groundbreaking. It allows fracturing any kind of brittle material like stone, glass or stucco. By using it digital artist are able to simulate the collapse of structures or terrain cracking in minutes. Not the least its easy setup and powerful stress tools allow for control in the creation of cracks and drive the simulation to the desired end.
The rigid body solver inside Pulldownit is designed to handle massive simulations, that means thousands of objects in contact. Speed is the first requirement for such a goal; we have improved over the fastest methods in the literature for both mesh and convex detection, Pulldownit computes in real time for scenes made up to 100 objects and take only minutes to simulate thousands of contacts. In addition Pdi! counts with group tools allowing to set up and manage large scenes. Pulldownit solver makes possible to crack dynamically any kind of brittle material like stone, glass or stucco. The set up is very easy, use Shatter it! tool to fracture your object or just build a structure by blocks or pieces of any shape, select all of them as a fracture object and hit play, this procedure also makes the setting of texture coordinates easier. Once in simulation Pulldownit will compute all the stress forces that create cracks and finally makes the objects collapse. Fracture objects can be static as a building or dynamic as a meteor, you can create as many fracture objects as you want, and make them impact each other. Control is always an issue in dynamics simulation, in this sense the powerful stress tools of Pulldownit allow to define the start of the cracks and the way of propagation just by setting fracture frames, in which the crack will begin, and visually select regions of the object with different hardness.
Pulldownit is currently integrated into Autodesk 3ds Max and Maya, It catches the geometry from the viewports and computes the final result as animation keys. It allows to reset the simulation and start again as many as needed also tweaking parameters and resume simulation at any frame, in addition, animated objects and characters are able to interact with the simulated ones.
Our aim is to fit in the animator’s workflow never the opposite. Pulldownit takes the geometry from the viewports “as is”, special care has been taken with parenting relationships, mesh modifiers and pivot offsets as we know they all are a frequent source of problems. The natural unpredictability of dynamics simulation makes necessary to play with the parameters back and forth until reaching the desired result, Pulldownit not only allows to reset simulation an start again as many as needed but also pause it at any frame, tweaking parameters and resume computing. Force fields as wind, turbulence, attractors or custom fields are supported and interact with PDI objects seamlessly. Pulldownit bakes the simulation as animation keys that can be easily tweaked or exported later to other formats. Finally, as it is usual to have scenes in which animated characters interact with their environment in a physically believable way, Pulldownit allows dynamic response between keyframed objects or deform meshes and the simulated ones.
What’s new in Version 4
Shatter New Features
New Adquire Shatter style, new style to transfer a current shatter pattern to another object including animation keys, by using it you can apply the current shatter effect to a version of the model with different shaders applied or to a hi-poly version of the same model.
New Shatter option for using a volume shape as a source
Now you can use any polygonal shape to constraint the shatter effect to its contour, this is especially useful when shattering based on an impact object.
Jagginess( v2.0) independent of tessellation.
New Jaggy method is independent of the original mesh tessellation, getting much lighter jaggy fragments when the object is hi-poly, and removing the artifacts caused in borders of high tessellated models.
New soften edges UI parameter for Jagginess. New parameter to adjust soften of jaggy edges to get the amount of roughness desired in inner faces. In addition new soften method removes visible seems on inner borders from the previous method.
New option to apply jaggines to broken fragments only, using this option for non-moving fragments you can apply jagginess only to the areas which has been broken in simulation, getting much lighter meshes for rendering or real-time games.
Dynamics New Features
Speed up Fractures solver 30%, PDI dynamic solver has been very fast since its first version, in this latest release you will experiment faster iterations when working in dynamics.
50% less memory needed for caching simulations. PDI cache is now 50% lighter in CPU memory, that makes massive cached simulations running faster in the viewport.
New ability to pull apart pieces of an animated object at the desired frame, besides activating rigid bodies at first hit you can now set the frame when they become active, this works also for rigid bodies linked to an animated one.
Added a bake selected option
You can now bake keys only for selected fracture bodies, letting the rest to continue being driven by simulation, baked fractures can still interact with other objects by setting the animated fragments as kinematic bodies.
Improved performance of fragments selection in advanced fractures, selection of individual fragments in the viewport is more responsive, especially when Stresses View is enabled.
Cluster break energy is now independent of body mass/scale, break energy dependence on body mass made cumbersome to understand its behavior as the same threshold will trigger a blast or not depending on the size of the object, because of this we have removed this dependency and the threshold you set will be valid forever independently of mass or scale.
First hit bodies which eventually doesn’t move are excluded from caching and baking, fracture bodies set as “break upon impact” only caches its broken or moving parts and fragments set as static aren’t cached at all, making in this way the size of PDI files smaller especially when you are collapsing only parts of large structures such as buildings.
Update 4.8 29/01/2020
- Shatter it 2x faster
- Shatter “Undo last” 4x faster
- Shatter preview mode 3x faster with hi-poly meshes
- Apply Jagginess 5x faster in Maya
- Modify Jagginess 3x faster in Maya
- Soften jaggy edges 10x faster in Maya
- Improved quality of jaggy tesselation
- Fixed mesh-mesh collision get stucked sometimes
- Fixed seed doesnt affect local shatter centers position
- Fixed local shatter doesnt fit some points to surface of the model
- Fixed convex hull construction fails for very thin objects
- Fixed weird aligment of points of Path based shatter with thin objects
- Fixed local shatter locator doesnt fit to selected fragment area
- Fixed Undo Last shatter doesnt recover original node names
- Fixed Pdi evaluator doenst work after loading Bifrost in Maya
- Fixed some shatter faces missed in voronoi display wire
- Fixed after shatter “undo last” large cut faces are splitted in triangles
- Fixed huge viewport slow down when displaying stresses
- Fixed selected fragments non highlighted when displaying stresses color( DirectX mode)
- Fixed shatter group dissapears after reshattering when it is child of another Maya node
- Fixed fragments of tesselated objects are detected wrongly by the plugin as open edges
- Fixed rarely a few shards miss its UVS after shattering
- Fixed Additional uvsets are distorted after applying jagginess
- Fixed adding jaggines with voronoi node selected doest it wrong
- Fixed remove jagginess after soften edges left soft edges on original shards
- Fixed soften jaggy edges “broken only” affects non jaggy vertexes of neighboring fragments
- Fixed hi-tesselated shards fails to match jaggy borders in some areas
- Fixed large Jaggy borders almost not deform
NOTE: Maya 2019 and 2020 Cached Playback is supported only after baking keys and deleting all PDi rigid bodies
Update 4.7 14/10/2019
- Secondary cracks are now per fragment
- New transition animation-dynamics method for fracture bodies
- Allow to recompute fragments with baked keys in dynamics
- Can reshatter single fragments of baked fracture bodies to any extent
- Baking of keys is a a background process
- Shatter of combined meshes up to 8x faster
- Shatter group is now hilighted before shatter “undo All”
- Added new clear PDI cache UI button
- Fixed application crash when kinematic-mesh animated bodies changes topology per frame
- Fixed “unbreakable until frame” event doesnt work when some fragments are static
- Fixed prop style change event not working sometimes
- Fixed cluster break energy doesnt work when cluster hardness > 0
- Fixed cluster break energy still acts after the cluster has been detached
- Fixed “break at frame ” cluster get detached by force fields in advance
- Fixed adquire shatter fails to transfer keys when target mesh has diferent topology than source
- Fixed adquire shatter doesnt assign original node names to shape nodes
- Fixed static non “first hit” fracture bodies start to break in advance if any other static object is in contact with it
- Fixed “activation at frame” bodies miss it initial speed after resetting the scene
- Fixed Manage PDi World Window not updated when deleting a rigid body in viewport
- Fixed sleeping fracture bodies doesnt break when using clusters
- Fixed break energy hardly affects large fragments
- Fixed cannot undo shatter groups with fracture body signed
- Fixed shatter “undo last” remove fragments with baked keys
- Fixed reshatter already baked fragments delete animation keys for the whole shatter group
- Fixed hidden fragments are wrongly included in fracture body creation
- Fixed scene reset before saving it when no pdi objects in scene
- Fixed cluster of “only breaks” fbodies doesnt break off
- Fixed models made of diferent parts shatter always as detached meshes
- Fixed local propagation dependance in fracture body mass
- Fixed cannot add jagginess to recomputed fragments
- Fixed jaggines applyed wrongly to old cut faces
- Fixed animated nodes child of other animated one are set wrongly as first hit
- Fixed shards childs of an animated node are wrongly set as dynamic rbds by default
- Fixed wrongly assign rigid bodies to all childs in the hierarchy when parent selected
- Fixed shatter cage not displayed correclty when using wood splinter pattern
- Fixed mesh artifacts appearing sometimes when shattering combined meshes as a whole
- Fixed resume simulation fails after scrubing the time line
- Fixed static fracture bodies in contact breaks at the begining of simulation
- Fixed convex hull includes far away points when mesh has only 3 vertices
- Fixed convex hull of planar faces doenst collide from inside
- Fixed last frame of simulation not cached for animated fractures
- Fixed cache mode is deactived when user reach start frame but scrubbing time line
- Fixed delete single cluster spoil clusterize state
Update 4.5 – 29/10/2018
- A new tool for adding Particles to inner faces of shattered objects
- Hi-poly animated meshes 3x times faster update in dynamics
- New “Increase Selection” fragments button for easier cluster creation
- Added ability to change propagation scheme at the desired frame
- Fracture body Friction, Bounciness, Sec cracks, and damping are now animatable in Maya
- Rigid body Friction, Bounciness and Mass params are now animatable in Maya
- New option to show/hide all disabled rigid bodies in a scene
- Added a hint warning when trying to shatter an object with open edges
- Acquire shatter can transfer animation from a single shape node to multi-shape nodes
- “Only Break” fracture bodies captures larger cracks and detachments
- Fixed bake selected ignores single rigid bodies
- Fixed bake selected fails when selecting nodes in the viewport
- Fixed Jagginess 2.0 doesn’t preserve vertex colors
- Fixed Maya viewport navigation slow down when many rigid bodies selected
- Fixed update rigid body transform for multiple objects changes its creation settings
- Fixed sec cracks value not saved with fracture defaults
- Fixed advanced fractures current selection persist after deleting fracture body
- Fixed Pdi Manage Window doesn’t update if still open after loading a new scene
- Fixed Shatter Undo All make crash Maya when the selected node doesn’t belong to a shatter group
- Fixed stresses view for animated fracture bodies shattered at frame different than 0 display at the wrong position
- Fixed stresses view disappears when changing view context
- Fixed vertex color shatter almost ignores small white areas
- Fixed crackers can be shattered when selected along with an object
- Fixed crackers can be set wrongly as rigid bodies
- Fixed local shatter fits points to surface incorrectly in complex areas
- Fixed convex hull volume crash sometimes for hi-poly models
- Fixed can not create fracture bodies from nodes already initialized as rbds
- Fixed ref shapes for shattering exceeding object shape generates much less shatter points than expected
- Fixed transfer keys range set to the number of source keys in place of the time range
- Fixed vertex color shatter fits points to convex hull in place of the original shape
- Fixed shape based shatter fits incorrectly if the object has frozen transform
- Fixed jaggy faces distortion because of displacing non-corner jaggy vertex
- Fixed local jagginess now applies to unbroken faces of neighboring fragments
- Fixed modify local jagginess doesn’t affect neighbors
- Fixed delete local jagginess doesn’t affect neighbors
- Fixed select non-solid objects wasn’t working correctly
- Fixed after load scene delete all clusters left wrong stresses in some fragments
- Fixed PDi wrong start frame warning when user changes time range
When using Maya in Parallel mode, goal UV particles does it the wrong second and successive times you play the scene,
this is a Maya issue we cannot fix in our side, the workaround is revert to classic DG mode and caches the nParticles,
then you can set parallel mode safely.
New in Version 4.0
- Outline view of Shatterit fragments in the viewport
- New shatter option for using a volume shape as the source
- New Adquire Shatter style
- Jagginess is now independent of mesh tessellation
- New soften edges UI parameter for jagginess
- Improved look of jaggines with soften edges
- New option to apply jaggines to broken fragments only
- Speed up Fractures solver 30% * 50% less memory needed for caching simulations
- Clusterize parameter now depends on object hardness
- New ability to pull apart pieces of an animated object in dynamics at the desired frame.
- Default masses for rigid bodies adjusted to more comprehensible values
- Improved performance of fragments selection in advanced fractures
- cluster break energy is now independent of mass
- First hit bodies which eventually doesn’t move are excluded from caching and baking
- Added a bake selected option
- Fixed secondary cracks dependance on object mass
- Fixed shatter history points don’t match the object transform in the frame different than 0
- Fixed shatter it generates the same pattern when shattering several objects at once
- Fixed VP2 slow down when switching stresses colors for many fragments
- Fixed delete fracture bodies are very slow when in VP2
- Fixed delete fracture body with baked keys causes PDI solver to get blocked
- Fixed PDI scene gets corrupt when the user changes Maya units
- Fixed animated rotating bodies with pivot away from CM perform bad collisions
- Fixed Maya crash when user duplicate a node with PDI body attached
- Fixed incorrect drawing of Fracture bodies contour when faces has more than 32 vertexes
- Fixed solver start frame value missed when loading a PDi scene
- Fixed animated fracture bodies go haywire when scratching the slider
- Fixed PDI solver gets blocked if users delete PDi keys using Maya commands
- Fixed animated bodies fail to compute vertex velocities sometimes
- Fixed capsule volume not displayed in VP2
- Fixed shatter a non-animated parent node hide all its shields in the viewport
- Fixed parented nodes are displayed incorrectly in stresses view using VP2
- Fixed first hit fractures arent activated if impact body mass is less than its own mass
- Fixed selected body isn’t displayed when going back to start frame
New in V3.8.8
- Available for Maya 2018
- Viewport 2.0 fully supported in Maya 2018
- Fixed breaks upon impact don’t behave correctly with impact massive objects
- Fixed transition anim dynamics bodies don’t acquire momentum sometimes
- Fixed initial spin dependence on body/fbody mass
- Fixed switching a fractured body static ON/OFF makes it ignore its velocity parameters
- Fixed switching a rigid body static ON/OFF in frame different than 0 reset its initial position
- Fixed baking keys fails when cache mode is disabled and start frame different than 0
- Fixed unbreakable activation at frame fractures moves in advance sometimes
- Fixed Maya crash when trying to create a fractured body from jaggy fragments
Viewport 2.0 is supported in Maya 2015, 2016, 2017, however, a few plugin operations perform faster using legacy viewport.
New in V3.8.6
- Shatter Support for Vertex Colors.
- New Vertex Colors Shatter Style.
- Modify Jaggy Strength is now a fast operation.
- All Basic Fracture params are now saved after deleting a fracture body, in this way you can reshatter an object and all your fracture params are restored after creating the fracture body again.
- New “Set All Values to Default” Basic Fractures Option: Useful new option when you want to reset all values to solver defaults without having to delete the Fracture body.
- See all bug fixes here.
New in v3.8:
This update counts with a bunch of fixes and enhancements, making the plugin more reliable and quick in production environments, surely users will appreciate the fast Undo Last Shatter operation or the outstanding Jaggy feature now preserving UVs of the original faces, and other useful improvements you can read below.
But this update is especially about Wood Splinters Shatter, we have developed a new scheme for it so now you get always long, thin splinters even when shattering areas, adding to this a stable dynamics for fracturing wooden objects and the Jaggy feature to apply roughness in the inner faces, you can get quite natural wood destruction effects very fast.
Version 3.8 Enhancements:
- Available for 3d Max 2017 and Maya 2016 extension 2
- New Wood Splinters Reshattering scheme
- New “detect mesh groups” shatter option for shattering correctly combined meshes
- Jagginess preserve UVs of original faces( single and multi uvs) PreserveUVs
- Cut Material->new allows updating the material of current shatter group
- The original object is auto selected after Shatter it->Undo All
- AutoSelect the fractured body in the list corresponding to the currently selected fragment
- Improved performance drawing of fragments in 3d Max
- Shatter Undo Last is now a fast operation
- Support VP 2.0 Core profile mode in Maya( rest of modes were already supported)
- Support Maya 2016 Parallel mode
- PDI keys use 30% less RAM in Maya getting the playback of massive rbd scenes faster.