I am trying to determine the most appropriate destruction solution for an online desktop game. There are two main factors here that I am considering; 1) the performance of the approach taken and how much resources it requires, 2) the turn around time for making an asset "destructible".
There are three main destruction approaches which I am aware of:
1) Creating a destruction animation for each asset, which plays based on specific conditions
2) Create a second version of each asset consisting of rigidbodies. Under specific conditions, replace the static asset with the rigidibodies and gravity/ other physics forces will cause it to collapse
3) Use a mesh splitting system to dynamically split static assets into rigidbodies at runtime
Option 1 appears to have the best performance, however it also requires the most preparation time to do realistically. Option 3 on the other hand requires no preparation time for assets, however it is the heaviest on performance since it is completely physics based.
My question than is, which of the above approaches is most common in the industry today? Or if there is another better approach which I have missed, what is it. Ideally I would like to go with option 3, but I fear that the performance hit would be too severe.