Я делаю эту программу на C ++ с прямоугольниками, которые нужно перетаскивать горизонтально или вертикально, щелкая по ним и проверяя, не столкнутся ли другие прямоугольники с ним.
Теперь, в моей ситуации, у меня есть такой случай, если пользователь перемещает мышь очень быстро. Обнаружение столкновения не будет работать, я имею в виду, the other coordinates are skipped out or jump out on a very large distance
, Я предполагаю, что добавление чувствительности мыши к моей программе может изменить это нежелательное поведение.
я использую GLFW
для окон Я думаю glfwSetMousePos()
могу делать то, что я хочу, но я не знаю, какую математику я должен применить, чтобы достичь этого. И если возможно, я не хочу использовать другие библиотеки. Может кто-нибудь показать какой-нибудь код, как я могу это сделать?
Спасибо!
Обновить
К сожалению, чувствительность мыши не является проблемой в моем случае. Я думаю, что могу обойти это, расширив мой код с большим количеством if
, Тем не менее, для тех, кто ищет такой вопрос, я предлагаю этот. Вы можете использовать его как отдельную программу, просто запустив этот код.
Похоже, вам нужен алгоритм обнаружения столкновений, который обрабатывает проникновение на любой скорости.
Посмотрите на широкое обнаружение столкновений. Это в значительной степени, как работают все физические движки.
Других решений пока нет …