Actualmente estoy trabajando en la búsqueda de ruta A * en una cuadrícula y estoy buscando suavizar la ruta generada, al mismo tiempo que considero la extensión del personaje que se mueve a lo largo de ella. Estoy usando una cuadrícula para la búsqueda de ruta, sin embargo, el movimiento del personaje es itinerancia libre, no es estricto movimiento de mosaico a mosaico.
Para lograr un camino más suave y más eficiente, estoy haciendo trazos de línea en una cuadrícula para determinar si hay mosaicos no transitables entre los mosaicos para eliminar las esquinas innecesarias.
Sin embargo, debido a que un trazo de línea es de extensión cero, no tiene en cuenta la extensión del personaje y da malos resultados (no devuelve fichas no caminables que la línea acaba de perder, causando colisiones no deseadas).
Entonces, lo que estoy buscando es en lugar de un algoritmo de línea que determine los mosaicos debajo de él, estoy buscando uno que determine los mosaicos debajo de una línea de extensión de todo el mosaico. ¡Aquí hay una imagen para ayudar a visualizar mi problema!
¿Alguien tiene alguna idea? He estado trabajando con la línea de Bresenham y otras alternativas, pero aún no he descubierto cómo resolver este problema específico.