So in the fighting game I’m working on I tuned all the physics values to something that feels right in-game and it’s working fine, but I was wondering if there’s value in reworking the numbers to be closer to “real world”.
The docs mention the physics engine is tuned to work well in the 0.1 to 10 metre range. The pixel size of a fighter is roughly 200 pixels, so a physics scale of 0.1 is appropriate (well, actually the fighter GO is scaled to twice the size, so the fighters are “actually” 4 metres high, but that’s still within the recommended range.
However, I kept the mass at 1 and adjusted the gravity and force applied from hits to values that made the game behave more or less the way I wanted. For example the force applied (once!) during an uppercut is vmath.vector3(14000, 120000, 0). I suppose changing the weight of the fighter collision object to 85 (kg?) and multiplying the force by the same amount would lead to the same result. Another thing to consider is to spread the force over several frames, though I kinda want the jerky way it looks now.
My question is - is there a sweet spot for the values of mass and/or force applied similar to the one when it comes to sizes?
I can and almost certainly will try to fiddle with these things, but I’d like to know a bit about the inner workings so I don’t stumble in the dark. It can sometimes be hard to evaluate the difference after changing the physics in a major way, since I’m relying on feelings rather than any objective measures most of the time.