在Unity中,物理对象低速弹跳不正确

5
我遇到了一个问题,当一颗物理球慢速移动时,它不能正确地从物体上弹开。我制作了一个视频来说明这个问题:https://youtu.be/9T1hkir7sCo。基本上,球应该撞到静止的球并将其弹起。当速度足够快时,它可以正常工作,但低于某个阈值时,它们两个会开始一起移动,看起来很奇怪。请问这是什么问题,并如何使其正确地反应?实验详细信息(两个对象相同):刚体:质量1、阻力0、角阻力0、不使用重力;物理材料:动态摩擦力0、静态摩擦力0、弹性1。
1个回答

11

Unity默认的Bounce Threshold用于识别弹跳的速度为> 2

设置一个速度值。如果两个碰撞对象的相对速度低于此值,则它们不会相互弹跳。此值还可以减少抖动,因此不建议将其设置为非常低的值。


您可以在PhysicsManager编辑->项目设置->物理)中更改此Bounce Threshold

enter image description here

或在运行时通过脚本更改(请参见Physics.bounceThreshold

Physics.bounceThreshold = 1;

尽可能使其变小...但请注意

这个值也会减少抖动,因此不建议将其设置为非常低的值。

输入图像描述


非常好的文档回答。感谢您的努力。这正是我所需要的。 - Mr Bell

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接