Как получить точку столкновения с SAT - PullRequest
0 голосов
/ 03 апреля 2019

Я внедрил систему обнаружения столкновений SAT в 2D, но я не понимаю, как получить точку удара при столкновении.

На данный момент я получаю mtv и разделяющую ось, поэтому я могу разрешить столкновение, но не применять к нему правильные силы, потому что точка удара отсутствует.

1 Ответ

0 голосов
/ 04 апреля 2019

Ответ здесь https://www.gamedev.net/forums/topic/588070-seperating-axis-theorem---how-to-resolve-contact-points/ от Дирка Грегориуса, помог мне решить проблему. Как описано, вы должны найти два ребра ближе всего и посмотреть, где они сталкиваются, если нет, это означает, что это ребро / ребро столкновение «Первое» лицо - более естественное, потому что оно перпендикулярно вашей оси разделения. Для другого лица я предпочитаю сделать точку продуктом моего первого лица со всеми остальными краями и найти точку с меньшим количеством точек. Затем я проверяю, сталкиваются ли два сегмента.

...