【问题标题】:How to get a ball/sphere to stop如何让球/球停止
【发布时间】:2013-05-12 20:21:48
【问题描述】:

我在 unity3d 中找到了一个字段,其中有一些凹陷(如小孔)。田野的坡度总是通向最近的洼地。 一个球体随机掉落在场地的某个地方,滚动了一会儿,直到它停在其中一个凹陷处。

问题是,这花费了太长时间。它可能会滚动 5-10 秒,直到停止。我想快点停下来。

有什么想法可以实现这一点吗?

编辑:主要问题是当球靠近洼地时,但它的速度与球洞成 90 度,然后它开始转圈并需要一段时间才能停止。

【问题讨论】:

  • 您可以添加自己的阻尼脚本,以测量相对于最近凹陷的位置变化。如果该变化持续小于某个阈值,则终止球体的速度。
  • 我希望它停在洼地中间……但我可以向最近的洼地中心施加恒定的力,这可能会奏效。我试试,谢谢。
  • 如果您使用物理(似乎是这样),您还可以增加物理材料的动态摩擦。
  • 增加重力不是也有效吗?
  • 增加动摩擦不起作用(可能是因为它是一个球?)。我不想增加重力,因为它会影响其他游戏机制。我确实增加了质量,但也没有太大的影响。

标签: unity3d game-physics physics-engine


【解决方案1】:

好的,在cmet中得到了一些建议,并进行了实验,这就是我解决它的方法:

  1. 向凹陷处施加少量力量
  2. 如果当前速度与凹陷中心的距离超过 30 度,则放慢球的速度(在与速度相反的方向施加力量)
  3. 如果球非常接近凹陷的中心,请将其停止并将其放在中心

感谢所有提示。如果有人提出更好的方法,我仍然愿意接受建议。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-05-23
    • 2016-07-24
    • 1970-01-01
    • 1970-01-01
    • 2016-03-24
    • 2018-06-10
    相关资源
    最近更新 更多