Устранение направления от вектора - PullRequest
1 голос
/ 21 февраля 2011

Я программирую очень простой алгоритм реагирования на столкновение 2D (к счастью), но даже действительно простые геометрические концепции меня сбили с толку. Учился! Но ...

В данном случае это векторы:

Если объект попадает на кусок геометрии, я хочу полностью устранить импульс этого объекта в направлении, параллельном нормали к стене геометрии. К счастью, здесь нет трения или отскока, но я все еще не знаю, как найти вектор, который полностью нейтрализует этот импульс вдоль нормали.

Заранее спасибо!

Ответы [ 3 ]

7 голосов
/ 21 февраля 2011

Рассчитайте скалярное произведение нормали к геометрической стене с вектором скорости объекта.Результат равен компоненту скорости в направлении нормали к стене.Вычтите нормаль стены, умноженную на этот результат, из вектора скорости, чтобы убрать всю скорость в этом направлении.

0 голосов
/ 21 февраля 2011

enter image description here

0 голосов
/ 21 февраля 2011

Если вы ищете формулу отражения, там есть термин, который вычитает в два раза больше скорости в направлении нормали геометрии.Измените это на 1 раз, и он остановится вместо того, чтобы подпрыгивать.Извините, нет времени на формулы; -)

...