Sto provando a trovare una soluzione per il rilevamento dei percorsi in un gioco di treni in cui esistono diversi tipi di biforcazioni. Voglio che il treno vada da una ferrovia all'altra, tutto è implementato eccetto il path-finding.Algoritmo di individuazione dei percorsi per i treni
Ho bisogno di ottenere un elenco di binari in modo che il treno possa seguire. Ora, il problema è come ottengo la lista.
- Ho provato A *, non ha funzionato perché smette di cercare se il nodo (rail) è già visitato. Questo è un problema, perché forse il modo per raggiungere un punto è attraversando il percorso più lungo.
- Riempimento di piena, questa volta non ha smesso di cercare se già visitato, il problema è come ricostruire il percorso e come si sceglie che non può tornare indietro.
Il fatto è che ci sono casi in cui il treno deve passare attraverso una sbarra più volte per raggiungere la sua destinazione.
Qualche idea?
Il punto di partenza è A, fine B. Come si vede il percorso verde è il modo in cui dovrebbe viaggiare. Il cerchio balck sono le rotaie che il treno farà più di una volta, in questo caso 2 volte.
E ovviamente, è necessario venire da 2 nero per arrivare a 3 rosso. Non puoi semplicemente andare 1black-> 2red-> 1red-> 3red.
Puoi dare un esempio di quando devi passare attraverso un binario più volte? –
Non capisco cosa c'è di sbagliato in A *, non vorresti intraprendere il percorso più breve? "Forse il modo per raggiungere un punto è di percorrere la strada più lunga." se esiste un percorso A * lo troverà, se ce ne sono diversi, troverà quello più corto, perché vorresti quello più lungo. – pseudoDust
* "forse il modo per raggiungere un punto è percorrendo la via più lunga" * - Che cosa significa esattamente? In quali circostanze * non * vorresti intraprendere la via più breve? –