Tengo un juego Breakout en el que, en algún momento, detecto la colisión entre la pelota y la pala con algo como esto:
// Ball class
rectangle.Intersects(paddle.Rectangle);
¿Hay alguna manera de obtener las coordenadas exactas de la colisión, o algún detalle al respecto, con la corriente XNA API
?
Pensé en hacer algunos cálculos básicos, como comparar las coordenadas exactas de cada objeto en el momento de la colisión. Se vería algo así:
// 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
Pero no estoy seguro de que esta sea la forma correcta de hacerlo.
¿Ustedes tienen algún consejo sobre tal vez un motor que podría tener que usar para lograr eso? ¿O incluso buenas prácticas de codificación con este método?
get the rectangle where the two overlap
funcionalidad está disponible en elXNA API
o tengo que descargar algunas cosas adicionales, como elPlatformer Starter Kit
?