J'ai un jeu Breakout dans lequel, à un moment donné, je détecte la collision entre la balle et la raquette avec quelque chose comme ceci:
// Ball class
rectangle.Intersects(paddle.Rectangle);
Existe-t-il un moyen d'obtenir les coordonnées exactes de la collision ou des détails à ce sujet avec le courant XNA API
?
J'ai pensé faire quelques calculs de base, comme comparer les coordonnées exactes de chaque objet au moment de la collision. Cela ressemblerait à quelque chose comme ceci:
// 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
Mais je ne suis pas sûr que ce soit la bonne façon de procéder.
Avez-vous des conseils sur peut-être un moteur que je devrais utiliser pour y parvenir? Ou même de bonnes pratiques de codage utilisant cette méthode?
get the rectangle where the two overlap
fonctionnalité est-elle disponible sur leXNA API
ou je dois télécharger des trucs supplémentaires, comme lePlatformer Starter Kit
?