Rigidbody loses speed

I have a Rigidbody, a ball, that has no Drag or Friction at all. It’s launched at the beginning of the script and shouldn’t lose any speed. I have a mesh collider, a paddle, that bounces the ball another way. If the collider is perfectly paralleled and still the ball doesn’t lose any speed, the way I intended it. But if the paddle is slightly crooked and the ball hits a sloped surface, the ball loses speed. Is there any way to prevent this?

As I already said:

Have you actually check the velocity before and after using rigidbody.velocity.magnitude ?

Use Debug.Log to tell you the two speeds. Let us know the two speeds.

IF they truly change, simply SET the speed after the bounce.

Do so simply using

rigidbody.velocity = rigidbody.velocity.normalized * YourDesiredSpeed;

that’s it !