

Any half-decent one will already make good use of multithreading and other optimizations.This adds more complexity on top of it. Voxel games in general are pretty performance reliant. But getting to that point requires heavy optimizations. The rest should work more or less on its own now. All of which needs to happen in realtime, of course. If a mesh is separated from the groundmesh, it needs to become its own object, including being physics simulated. When some voxels take damage or a collision occurs, recalculate the structural integrity of relevant neighboring voxels (based on some arbitrary criterias) and check if this leads to their destruction due to stress. For that id "simply" add a structural integrity value to each voxel. What seems different here from other voxel games is the attempt to add some physics simulation to it. I was thinking about having a collider surrounding the entire building to switch structure from static to dynamic when it is active, to make game perform better. Also some sort of destruction outwards from collider hitting another collider, ground, when building smash to ground. I was thinking about adding some sort of destruction outwards from suports where the rotation is happening, when building is falling over. When the building falls over it will have some additional damage. If, lets say less then 1/3 of the voxels remains after impact the suport will simply disapear.

When collider surrounding voxel layer is hit from explosion spherecast, it will count number of voxels left in layer.

For example group voxels together, in a random pattern, based on distance from explosion impact. The destructable voxel layer will be destroyed based on type of impact and type of material. Then attach destructable voxel layers (visible) as child of the dynamic parent within a collider, surrounding the corresponding suport. I was thinking about having a dynamic parent (invisible) with dynamic suports as child (invisible). Lets take a concrete tower building as an example.
