Its easier to distort a building model like they currently do, than it is to simulate the actual collapse of a building.
You would have to model the different parts seperately (floors, walls, roof, ceiling, etc) and then calculate how they would react in falling inwards and interacting with each other.
So instead of the engine just dealing with one model distorting in a pre-defined path, the engine then has to do a lot more calculation and has to deal with each part individually as well.
Even if they followed pre-defined paths to their end point (walls falling in, etc), the numbers game still adds up to a lot more wrk for the engine.
Take a small town of 10 single-story, two-room, 1 doorway, 2 window houses for example...
Current reaction = 10 models, easily handled if someone bombs/rocket strafes the town en masse.
Proper reaction = At least 70 wall models (per house is 3 plain external walls, 1 door wall, 2 window walls, 1 internal wall), 10 roof models & 10 floor models.
So even with predefined distortions, if someone bombs/rocket strafes the town the engine suddenly has to cope with 90 models instead of 10.
And thats only for single story. Up that total to include the two-story houses, apartment complexes, churches, hangars, etc and you would have far more models again.
So personally, I'm not a great fan of the building just twisting either, but I can see why they've done it that way.
On the upside:
One way I could see to create a better building destruction would be to have the distortions move down and in towards the middle oif the floor (instead of random direction) so that the walls and such fall inwards and the roof distorted and is lowered into the rubble.
For those that have tinkered with it, is it possible to alter the way building's distort upon destruction, or is it hard-coded into the engine?