【问题标题】:Making RB movement smoother/curvy. C#. Unity使 RB 运动更平滑/弯曲。 C#。统一
【发布时间】:2020-10-04 19:04:37
【问题描述】:

我正在尝试使我的 rb 运动更平滑/弯曲,现在它只在改变移动方向时以粗糙的边缘移动。

当前运动 img1

所需的运动 img2

代码如下 https://repl.it/@RicardsQuagmier/AcclaimedTightCosmos#main.cs

【问题讨论】:

    标签: c# unity3d rigid-bodies


    【解决方案1】:

    您的动作似乎完全基于输入。每当您按下某个键时,只要您按下它,它就会移动。在这种情况下,玩家完全可以控制运动,这就是它如此僵硬的原因。如果您平滑移动,输入可能会感觉很滑。如果你无论如何都想这样做,你会想要逐渐改变速度而不是立即改变速度。因此,在设置速度时,您需要执行以下操作:

    var delta = 0.2f * Time.fixedDeltaTime;
    velocityChange = Vector3.MoveTowards(rb.velocity, desiredVelocity - velocity, delta);
    

    您可以将 0.2 in delta 设置为您想要的任何值,根据自己的喜好进行调整。它越高,速度越快赶上输入。就像我说的那样,这可能会让事情变得迟钝或滑溜溜。

    【讨论】:

      猜你喜欢
      • 2014-12-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-09-19
      • 2017-09-26
      • 2016-10-26
      • 1970-01-01
      相关资源
      最近更新 更多