Friday, March 10, 2017

Het werkt !?!

Na een middag tutorials kijken en uitproberen ben ik zo ver gekomen dat ik het kortste pad naar een doel kan berekenen. Vooral deze tutorial-serie heeft mij veel geholpen:



Ik ben eerst de buur-tegels van iedere tegel gaan zoeken, en die gaan toevoegen aan een lijst van de desbetreffende tegel. Dus iedere tegel heeft een lijst van buurtegels. Omdat iedere tegel 1x1 groot is was dit redelijk makkelijk. Per tegel kijk ik welke tegel 1 unit boven, onder, links en rechts van die tegel ligt, en die voeg ik toe. Het is niet geoptimaliseerd, want hij loopt steeds door de hele lijst van tegels heen, maar het werkt.



Ik heb de diagonale tegels gecomment, omdat het pad dan soms door een muur heenloopt.

Daarna heb ik de g, h en f waardes bepaald van iedere tegel, zoals uitgelegd in de 2e post.

De g waarde is de afstand tot het startpunt
De h waarde is de afstand naar het doel
De f waarde zijn de g & h waardes opgeteld.

Daarna heb ik aan de hand van de YouTube tutorial hierboven het daadwerkelijke pathfinding geimplementeerd.



Uiteindelijk blijft er een lijst van tegels over die het pad vormen, die kleur ik dan rood om het pad aan te geven. Ook kleur ik de tegels die zijn "uitgeprobeert" door het algoritme geel. Hopelijk kan ik met wat optimalisatie zo min mogelijk gele tegels krijgen, maar dat is een volgende stap.

Dit is het resultaat tot nu toe:

No comments:

Post a Comment