У меня есть игра Breakout, в которой в какой-то момент я обнаруживаю столкновение между мячом и веслом примерно так:
// Ball class
rectangle.Intersects(paddle.Rectangle);
Есть ли способ, которым я могу получить точные координаты столкновения или какие-либо подробности о нем, с текущим XNA API?
Я подумал о некоторых базовых вычислениях, таких как сравнение точных координат каждого объекта в момент столкновения. Это будет выглядеть примерно так:
// Ball class
if((rectangle.X - paddle.Rectangle.X) < (paddle.Rectangle.Width / 2))
// Collision happened on the left side
else
// Collision happened on the right side
Но я не уверен, что это правильный способ сделать это.
У вас есть какие-нибудь советы по поводу двигателя, который мне, возможно, придется использовать для достижения этой цели? Или даже хорошие практики кодирования с использованием этого метода?
get the rectangle where the two overlapДоступна ли эта функция наXNA APIили мне нужно загрузить некоторые дополнительные материалы, напримерPlatformer Starter Kit?