Я пытаюсь сделать платформерскую игру на C ++, используя SDL2. Я хочу, чтобы игрок ускорялся / замедлялся при ходьбе или прыжках / падениях. Проблема в том, что из-за ускорения / замедления игрок часто оказывается втиснутым в блоки. Это потому, что если скорость = 5 и позиция игрока x = 50, а блок находится в точке x = 52, то игрок переместится в позицию игрока x = 55, прежде чем реализовать его в блоке. Что я могу сделать, чтобы это исправить?
Я знаю, что это странный и расплывчатый вопрос, но я боролся с ним некоторое время и не знаю, как ответить. Если у кого-то есть предложения относительно того, какая дополнительная информация могла бы улучшить этот вопрос, сообщите мне об этом.