0

我正在 Unity 2D 中开发一个项目以用于学习目的。这是一场乒乓球比赛。我有它的材料,所以它每次弹跳时都会跑得更快。它的材料唯一的问题是它的速度失控并出现故障。我想找到阻止它的方法。

例如,我想知道如何在球达到峰值速度时保持恒定速度,例如 15f。这是一个Rigidbody2d对撞球。

4

1 回答 1

3

正如这篇文章中所建议的那样,您可以使用该Vector2.ClampMagnitude方法控制刚体的速度,同时在OnFixedUpdate(). 为了您的方便,我在我引用的帖子中提供了代码。我编辑了引用帖子中提供的代码,以匹配 API 的最新更改:

float maxVelocity = 10;
 void FixedUpdate()
 {
 rigidbody2D.velocity = Vector2.ClampMagnitude(rigidbody2D.velocity, 
  maxVelocity);
 }
于 2017-05-20T06:34:02.777 回答