我正在尝试使用SDL2用C ++制作平台游戏。我希望玩家在行走或跳跃/摔倒时加速/减速。问题在于,由于加速/减速,玩家经常在发条时陷入楔形。这是因为,如果速度= 5且玩家位置x = 50且该区块位于x = 52,那么玩家将在区块中实现之前移动到玩家位置x = 55。我该怎么做才能解决此问题?
我知道这是一个古怪而模糊的问题,但是我已经为此苦苦挣扎了一段时间,并且对答案一无所知。如果有人对其他信息有什么建议,可以使这个问题更好,请随时让我知道。
您可以尝试做的一件简单的事情就是检查玩家在移动之前是否已经击中了障碍物。