Your object dosn't have volume, or has parts where there is no volume.
If you are modelling a house for example, and it has windows, the walls need to have volume so that they can be fractured. The fracturing algorithm doesn't work when trying to fracture parts of objects that don't have any volume.
The fracturing algorithm currently operates with floats (32 bit floating point variables). For some meshes with very tiny or thin triangles this may be a problem.
If it is only a couple of them then try computing the chunks with another seed.If there are more or the previous solution didn't help, then try adjusting the Cap Precision Fix (Adv.) parameter. You should try with lower values first (like 0.001) and work your way up if after recomputing the chunks there still are triangles. A normal range would be 0.001 to 0.02.Note that this may introduce some small artifacts, because we are limiting the minimum size the triangles can have.We soon will port the fracturing algorithm to use double precision floating point variables (64bit doubles).
Q: Can you give me some optimization tips?
A: -Limit the amount of chunks you create. This is fairly obvious but everything starts from here.
If you have our Concave Collider plugin, limit the collider vertices as much as possible.
Use the Min Collider Volume parameter to generate box colliders instead of mesh colliders for small chunks, or all chunks if they can be approximated by a cube without loosing fidelity. Box colliders are way faster than mesh colliders.
Use the chunk lifetime parameters (under the Events category: Min Chunk LifeTime, Max Chunk LifeTime and Offscreen LifeTime) to delete free chunks some time after they have been detached or after some time they are not visible by the camera.
If you are exploding a chunk or a whole object, low intensity explosions tend to keep chunks together and generate more contacts, slowing overall performance.
In general try to keep the chunks as separated as you can.
Q: How do I use my externally fractured objects in your tool?
A: Here is a videotutorial (link //www.youtube.com/watch?v=lxn0P-LkBsA)
Q: I try to make a prefab of a fractured object, or instance it through scripting, but the chunks appear empty.
A: You need to activate the "Enable Prefab Usage" parameter. This way all meshes will be saved to disk ready to be instanced.
Q: Can I reuse a fractured object so that I don't need to create instances again and again? I don't want to allocate new objects.
A: Yes, you can call FracturedObject.ResetChunks() (see the scripting section). The only condition is no chunks can have been deleted.
Q: What is the object created along with the chunks with an @ symbol before its name? It didn't appear before v1.10.
A: A new important optimization was introduced in v1.10. Now until a chunk is detached from the fractured object, all chunks will be disabled and the single object will be drawn instead. This saves an enormous amount of drawcalls especially in scenarios with multiple fractured objects.
Q: I want the support chunks to be able to be destroyed as well!
A: Deactivate the "Support Is Indestructible" parameter.
Q: I don't know how to use a support plane to attach something from a ceiling.
A: Support planes can be rotated as well. Just turn it upside down and make it intersect the top chunk.
Q: Voronoi is too slow!
A: The current implementation of Voronoi was introduced as a last time feature. It is a very brute-force approach and it is very slow for high numbers of cells. We plan to have a working fast Voronoi as soon as possible.
Q: Sometimes Voronoi generates intersecting chunks!
A: Disable the Voronoi Proximity Optimization parameter, that should fix it.
Q: Can I fracture objects at runtime?
A: The algorithms aren't fast enough yet, but we want to do this for future versions.
Q: I see the following messages: ConvexMesh::loadConvexHull: convex hull init failed! createHull: convex hull computation failed!
A: One or more small/planar chunks have been created and Unity isn't able to create a collider for them. You probably won't notice anything but if you want to get rid of this message you can try to increase your Min Collider Volume parameter so that the small chunks are approximated with a box collider. You will need to press Compute Colliders each time you change the Min Collider Volume value.
Q: Unity says I've reached the maximum number of vertices/faces for a collider.
A: Unfortunately Unity can't create mesh colliders for very large meshes. The only way to be able to get rid of this is creating smaller chunks, approximating them with boxes or to use our Concave Collider plugin, which integrates with the fracturing tool using the Use Concave Collider parameter on the bottom of the panel.
Q: The utility crashes when computing the chunks!
A: We found some cases where this happened. We use an external library for mesh capping that in some very specific cases makes Unity crash, even if it should handle the exception. Our most common workaround is selecting another seed and/or increasing the Cap Precision Fix (Adv.) parameter.