If you look for videos of people actually getting hit by high powered weapons, or high speed cars, you'll realize that what's unrealistic is your expectation. People in those cases behave a lot like ragdolls, we just don't see it in real life very often (or at all), so don't know what to expect.
Now this is just me making up theories, but I think that effect is exacerbated by the fact that kinetic energy scales with the square of velocity, and humans tend to think linearly.
I'm definitely aware of the Hollywood effect re: gunshots. :-)
My main complaint with Havok is that once ragdoll mode is activated (usually upon a character's death or an explosion causes them to loose footing), their limbs essentially become spaghetti and flail about wildly. It breaks the immersion for me.
A classic example of this is found in Dark Messiah of Might and Magic. Pretty fun to go through that game beating 90% of the enemies by kicking them into/off of things.
I believe that the problem is that the ragdoll is indestructible. So the limbs, which in reality would have been ripped apart, are instead rendered unrealistically.
Ripping limbs off wouldn't help with ratings though.
I wonder if it is an issue with high mass/inertia ratios. Large ratios between the highest and lowest mass of bodies can lead to ill conditioning of the underlying numerical systems, and practitioners will often 'cheat' by assigning everything the same mass. This could lead to an arm having the same inertia as a foot, which would cause the arm to flail wildly. Of course without knowing what the underlying model and solver is, this is pure speculation.
"Practitioners will often 'cheat' by assigning everything the same mass. This could lead to an arm having the same inertia as a foot"
It's fairly common to see totally bogus masses and inertia tensors in simulation. Especially inertia tensors. (Long thin objects have much higher moments of inertia in one axis. This is expressed as a 3x3 inertia tensor.) In my Animats "Falling Bodies" system, everything was composed of convex polyhedrons. For valid non-self-intersecting polyhedra, there's a straightforward way to integrate the total mass and the inertia tensor, developed by Brian Mirtich.[1] I used that to compute the mass properties automatically, without any help from the user. Density was assumed to be that of water unless overridden. That's a good approximation for humans and animals, but high for vehicles with lots of open interior volume.
Before finding Mirtich's paper, I was dividing convex polyhedra into tetrahedrons with one vertex at the barycenter of the polyhedron, computing the inertia tensor for each tetrahedron, translating them to the object center, and adding them up. It's clunky, but it works. Mirtich's method is much cleaner, and will work for all closed non-self-intersecting polyhedra.
There's no excuse for a simulation system not computing the mass properties. Expecting users to input an inertia tensor by hand is hopeless. (Looking at you, Gazebo.)
Here's a good basic test for proper inertia handling - a spinning top.[2] (Raw MP4 file, may need download before playing). That's from an early test of my Falling Bodies around 1996-1997. It spins smoothly, while precessing and wobbling, slows down due to the friction with the ground, and eventually falls over and rolls away. Try that in your physics engine. The better ones get it right.
I recall reading that Mirtich paper when I was doing my undergrad project. I still have a paper copy somewhere. You're definitely right in that there's really no excuse for not having proper inertia tensors. Given that paper is from '96, I would think that everybody who needs to know would know by now.
There's at least one contact model I'm fairly sure is unknown in the games industry and another I'm not sure about. A friend of mine (George Baciu) wrote a paper for an IEEE conference (Systems, Man, and Cybernetics, I think) on a method that solves the collisions using graph theory. One of the nice things about it is it handles multiple simultaneous collisions correctly. I'm annoyed because I can't find my copy of the paper or even the paper name at the moment. The other one is a volumetric contact model from Yves Gonthier's PhD thesis, "Contact Dynamics Modelling for Robotic Task Simulation" at the University of Waterloo. There's a thesis that uses it for a wheel-soil contact model and there's another thesis that validates it and presents a volumetric friction model.
Eberly's method is faster, but for rigid-body work, mass properties are precomputed once and stored. It's not necessary to run that algorithm during the simulation. Even for thousand-face polyhedra, it's not that slow to precompute mass properties.
If you build a system that can rip off limbs, and then downmod the forces applied until it doesn't do that anymore, you can get realism and ratings both. Step 1 is optional.
Now this is just me making up theories, but I think that effect is exacerbated by the fact that kinetic energy scales with the square of velocity, and humans tend to think linearly.