Trying to get the force of an impact in a low altitude racing game. I wish to make my collision detection more robust. RIght now I get the same magnitude returned regaurdless of the colliding objects attack angle.
I am using:
It detecects collision and things blow up well.
However when a collision is very shallow in angle it is still detected as big collision, not as sliding down the wall. I recieve the same relativeVelocity.magnitude for hitting a wall head on as for glancing it with at a very light attack angle. How should someone calculate collision magnitude adjusted for the angle of the incoming force.
EDIT: this is working, thanks to efge's answer:
it might be better to calculate baced on traveling direction (forces) than player rotation, but this feels good.
You could compare the ContactPoint.normal with the driving direction (or the velocity vector of the rigidbody).
In the function OnCollisionEnter you could use Collision.relativeVelocity and ContactPoint.normal.