c# 如何限制球速

c# how to put a clamp on ball speed

我有一个用于打砖块的球,当它在球棒边缘反弹时,它会加速超过 4 和 -4。我怎么能在 X 方向上放一个夹子,这样球就不会超过 4 或 -4?

非常感谢任何帮助或提示

谢谢

编辑:Apparently, XNA has the MathHelper class which has a Clamp method.

如果您想自己实现,请参阅下文。


典型的钳位函数是max(minimum, min(value, maximum))

也就是类似

ball.Velocity.X = Math.Max(-4, Math.Min(ball.Velocity.X, 4))

Min 的调用将值限制为最多 4(如果它大于 4,则 4 现在更小,因此 Min returns 4)和对 Max 将值限制为至少 -4(如果小于 -4,-4 现在更大,所以 Max returns -4.

结合起来,两者钳制值。