3

所以在过去的几个月里,我一直在尝试看看是否可以使用 Wheel Colliders。尽管我设法弄清楚了如何正确设置它们的越来越多的事情,但我一直注意到一些似乎无法避免的事情:

  • 即使您的摩擦侧向刚度较低,如果您只需按住输入足够长的时间以使汽车不仅仅是旋转,您的汽车仍有可能继续向您转向的方向“旋转”或“旋转”。我注意到这会发生,例如“SteerHelper”或“TractionControl”功能是否正在工作。这将对确保平稳的转弯运动产生影响。现在,我不知道这是否仅仅是由于现实的汽车物理特性(我的意思是,我可以想象汽车在他们肯定失去对道路的控制的情况下打滑),但感觉有点小故障。有时,即使我不转弯,汽车也会开始向左或向右转一点,然后逐渐看起来“倾斜” 就对刚体施加的扭矩而言,这种方式。我已经看到了许多试图阻止刚体这样做的建议。这是我试图解决这个问题的一种方法:
                rb.AddTorque(-rb.angularVelocity * 2);

然而,这辆车似乎仍然会比预期的更“旋转”。理想的情况是能够在释放左或右转向按钮后允许汽车多转一点(可能或多或少取决于车辆),仅此而已以确保最大程度地控制给我已经玩了很长时间的订婚和街机游戏。

  • 很难调整一个理想的摩擦曲线值,以提供最理想的漂移转弯感觉,尤其是更拱形的转弯。我并不是要进行让您减速的宽转弯,而是要进行紧凑(但可控)的转弯,以使您保持大部分速度。我发现,特别是在刚度较高的情况下,正如我知道许多人在其他帖子中观察到的那样,汽车有时会以极高的速度返回(你向左漂移得足够多,一个力正在将你的车辆向右转)。这很可悲,因为我想能够说我已经“掌握了这头野兽”并将其用于我的目的,但我不知道这对任何人来说是否真的是一个很好的实际期望。

在此处输入图像描述

但我想就像有些人说的,你不能抛光坏了的东西?转到第三点...

  • 我已经阅读了很多帖子,这些帖子展示了如何调整车辆的质心,或者在不同的位置添加更多对撞机来纠正它,使用脚本向质心添加偏移量等。这么多提示说, “降低质心,你会找到它”,我试一试。当质心太低时,我的车在地形上会变得非常摇晃(不是过去没有,但我经常可以纠正它,比如车轮碰撞器本身的附加刚体的奇怪初始化在开始等)。足够高,当然,(即使有时它更低???)当您驶下窗台或撞到足够高的物体时,汽车将开始在多个轴上或特别是前 z 轴上在空中旋转速度。这似乎是不可避免的。

我一直在试图证明我的好处。我喜欢认为有一个正确的方法来使用这个东西,而且我对 Unity3D 物理概念还不够熟悉。然而,我似乎越来越多地在损坏的组件上投入了太多时间——或者,也许我只是从未掌握过最好的物理学知识。

我正准备在轮胎周围尝试仅使用凸面网格对撞机,并完全放弃抓住物理的想法,但我很想听听建议来解决我上面提到的任何问题,或者只是一个更理想的移动包上。我看过 Vehicle Physics Pro 之类的软件包,但我确实想确定我得到的东西是有意义的。

全面披露:我正在尝试制作一款感觉与 F-Zero 极其相似但带有轮子的游戏。

提前感谢您提供的任何想法或建议。

4

1 回答 1

0

(可能本身不是答案,但希望对您有所帮助。)

注意Unity 还建议可能通过脚本给汽车一个恒定的向下力。官方给出了这样的解决方法,人们可能会认为没有它们,正确的物理学会很好地工作。

通常,您可能想尝试一些资产:

  • 一种是名为Arcade Car Physics的 Unity Asset Store 资产,它是免费的。我已经尝试过了,它可以工作(但不确定它是否适合您的需求)。它使用 Unity 的原生 Wheel Collider 以及额外的脚本。

  • 另一个是Arcade Car Physics github 项目。它具有良好的平面稳定性等等,并且运行良好。它没有使用原生的 Wheel Collider。

  • 然后是名为Vehicle Physics的资产。他们创建了一个完全自定义的轮子系统,而不是原生轮对撞机,因此它在物理上更可行。该资产不是免费的,但他们提供了一个免费的演示可执行文件,您可以在其中驾驶不同的车辆,而且效果很好。(我自己还没有购买这个资产。)作为一个缺点,一些评论提到设置它有一些复杂性(我认为未来对这个定制的 Wheel Collider 的支持取决于公司是否继续存在)。

祝你好运!

于 2020-02-11T16:02:26.403 回答