unity – Algorithically fracturing a mesh in Unity3D?

I want to create a plugin that breaks / fractures meshes, so I can make each object destructible If I want to. Like in Built-in feature of Unreal.

My quick approach to this problem is Generating random cuts (planes):

  • each cut divide the mesh inside 2 groups: left side of the cut and Right side of the cut,

  • at the points where intersects the mesh, me Add vertices to both groups.

  • and add Face 1-1 to each group with these new vertices.

  • create the new mesh.

Is there any better way? What do you recommend? Is my path even possible? If so, what API methods should I use?