Impossible physics situation happening

Hello, so Im making an arkanoid and I have a little problem.
In X situation, i dont know when or why yet this problem will happen (video). Now it happened at the bottom and would not be a problem since he would lose, but it can happen in the top too.

In theory that would be impossible, since it will check its direction with a Vector3.Refrect.

    void OnCollisionEnter(Collision col)
    {
        ContactPoint cp = col.contacts[0];
        rb.velocity = Vector3.Reflect(lastVelocity, cp.normal);

        GameCallbacks.instance.cbBallCollider(col.gameObject);
    }

immaculatewelcomecrane

I dont see nothing wrong in the code, so I think its a physics problem and I dont think its the scale of the project since it has 10m height.

Try this:

  • Ensure the physics material in the ball is configured so the resulting bouncing value is 1 (e.g. Bounciness = 1, Bounce Combine = Maximum).
  • Configure Bounce Threshold = 0 in Edit > Project Settings > Physics

Start logging collision data like angle & velocity, draw rays along normals and reflection vector, see what happens that causes it to jump like that.