First I want to thank you for all the good work with Unity3D engine and with this forum, because until now I have solved all my questions!
We are making a game that uses a little bit of physics for ball collision and reaction. We are also using forces to move the ball. The main problem comes when we use the events “OnCollisionEnter” and “OnCollisionStay”, after this events are executed when we call again AddForce over the ball, the force added is not as big as before.
For example:
First time I shot the ball I use AddForce with (245.2, 0.0, 5995.0)
and the speed of the ball is 117.6255
but after game executes OnCollisionStay (the object is 3 sec colliding)
I call AddForce with (474.5, 0.0, 5981.2)
and the result speed is 60.01628
I find nothing in the documentation about this behaviour.
Finally I fixed the problem using raycasting to see if I was over the collision instead of using the “OnEnterCollision, OnStayCollision and OnExitCollision” events.