Recientemente aprendí monogame y estoy trabajando en un juego simple de arriba hacia abajo para comenzar y aprender los conceptos básicos.
Tengo el movimiento y la rotación para seguir el mouse, pero estoy atrapado en las colisiones.
Lo que quiero saber, básicamente, son dos cosas:
- ¿Cuál sería la mejor manera de manejar las colisiones? Sé que
Rectangle.Intersects(Rectangle1, Rectangle2)
devuelve el rectángulo superpuesto, pero, como el movimiento de arriba hacia abajo está en el eje x / y, me gustaría saber dónde está ocurriendo la colisión para poder crear una especie de "deslizamiento de la pared" donde el jugador no consigue pegado a la pared.
¿Verificación de las coordenadas x / y de los jugadores contra las coordenadas de objetos sólidos, luego lanzar al jugador a su posición anterior si entra en los límites de un objeto sólido realmente el mejor enfoque? ¿Qué sugieres? - ¿Cuál sería la mejor manera de aplicar colisiones a todos los sólidos, npc, etc.? Actualmente estoy pensando en crear una
gameObject
clase de la que todos los objetos heredarán y solo manejarán las colisiones allí.
Gracias por leer y espero que alguien pueda darme algunos consejos.