Bien, tengo en mente un proyecto, pero necesito ayuda con algo.
Supongamos que tengo una mascara de una imagen/mapa determinada/o. Lo que no se puede pisar, lo "solido" es de
. El espacio que esta disponible para moverse es el de
Supongamos ahora que transormo la imagen en una matriz de tamaño el de la misma imagen y que donde hay un bit de color azul pongo un 1 y donde hay un bit de color blanco(espacio de movimiento) pongo un 0. Por ejemplo:
bool mascara[10][10] =
{{1,1,1,1,1,1,1,1,1,1},
{1,0,0,0,0,0,0,0,0,1},
{1,0,0,0,0,0,0,0,0,1},
{1,0,0,0,0,0,0,0,0,1},
{1,0,0,0,0,0,0,0,0,1},
{1,0,0,0,0,0,0,0,0,1},
{1,0,0,0,0,0,0,0,0,1},
{1,0,0,0,0,0,0,0,0,1},
{1,0,0,0,0,0,0,0,0,1},
{1,1,1,1,1,1,1,1,1,1}};
Tengo un sprite en la posicion (x,y), y me quiero mover a la posicion (s,t). Lo primero comprobaria que el espacio se puede "andar", de segundas debería buscar algo asi como el camino mas corto.
Para mover al personaje voy recorriendo por unidades, como un rey en ajedrez si me permitiis la comparacion.
A donde quiero llegar es a la pregunta, como hallo el camino minimo de 0 para ir de la posición x,y a la posicion s,t. Y si no existe tal camino, me lo indique de alguna forma.
PD: Quizas sea una pregunta muy basica, pero mis conocimientos actuales no me permiten sacar la forma de obtener este algoritmo/problema. Gracias a los que contesten