Unity 2D 物理材质 2D 问题弹性

问题描述

我是初学者,我正在尝试制作一个简单的游戏:Pong。
我已经为球使用了具有 0 摩擦和 1 弹性的物理材料,因此我不必通过代码进行每次碰撞。
问题如下:如果球有一个低度角并击中地面(或天花板),球将开始仅水平移动并停止弹跳。为什么会发生这种情况?

这是一个问题的小 gif:

Problem of the ball not bouncing correctly

谢谢!有什么需要可以问我

解决方法

Edit 下的 physics 2D settings > Project Settings > Physics2D

enter image description here

减少

速度阈值

设置弹性碰撞的阈值 . Unity 将相对速度低于此值的碰撞视为非弹性碰撞(即,碰撞游戏对象不会相互反弹)。

如果您的角度非常平坦,则碰撞影响的相对速度也非常小。