Обнаружение столкновения повернутого прямоугольника - PullRequest
0 голосов
/ 03 февраля 2012

Я работаю над этой игрой для iPhone, и мне нужно обнаружить столкновения между шариком (прямоугольник) и другим повернутым прямоугольником (иногда повернутым, иногда нет) В настоящее время я использую метод, описанный здесь

Это вроде работает, иногда дает сбой, когда немного повернут. У меня проблема в том, что это слишком медленно. К тому времени, когда он обнаруживает и изменяет угол, шар находится «слишком глубоко» внутри летучей мыши и, как и при следующей проверке столкновения, он обнаруживает, что он все еще сталкивается, и снова изменяет угол.

Есть ли лучший способ обнаружить столкновения? Я не возражаю против перехода на бурундук или box2d, но я не знаю, как использовать их, и мне не нужен какой-либо реальный мир или другая физика, поэтому, если возможно, я бы предпочел

1 Ответ

0 голосов
/ 03 февраля 2012

Один из способов сделать это - использовать обнаружение столкновения треугольника.Вращенный квадрат можно перевести в 2 треугольника.

Как это сделать, можно попробовать 3 контрольные точки (a, b), (b, c) и (a, c).(a, b и c - точки на треугольнике) и проверьте, находится ли что-нибудь между этими точками

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...