Wegfindung

Vielen dank, werd mal euren Spuren folgen....könnte mir einer von euch noch den Link zu dem Thread geben, wo ihr zwei das schon mal besprochen habt? Wäre euch sehr verbunden :)

MfG VoodOsK

PS: Was ich schon immer mal sagen wollte, Jens dein bunny is der hit ;)
 
Hi,

na ja, der Minesweeper-Thread ist hier: http://www.tutorials.de/tutorials210534.html&highlight=minesweeper (die andere Diskussion spielte sich in ICQ ab)

Das ist so natürlich noch kein kompletter "Wegfindungs"-Algorithmus - wenn ich Zeit habe, schau ich mal, ob ich einen brauchbaren Anfang hinbekomme und poste ihn hier. Im Moment sieht es leider etwas knapp aus, da ich nicht zuhause bin und hier nur gelegentlich PC-Zugang habe.

Gruß
.
 
Jens-Uwe Bahr hat gesagt.:
Also es gibt zur Wegfindung den sogenannten A*-Algorithmus, der auch in Professionellen Videospielen benutzt wird, um einen Weg zu finden. Ich hab hier einen keinen Tut zur implementierung des ganzen - in C++....

Das aber nur in inem Karosystem:
[…]
- also wenn das ganze aus "Blöcken" besteht.
Das stimmt so nicht. Mit dem A*-Algorithmus kann man allgemein den kürzesten Pfad zwischen zwei Knoten eines kantengewichteten Graphen ermitteln. Ein blockförmiges Raster stellt da nur einen Sonderfall dar :)

Ein schönes Tutorial dazu findet sich bei AI depot.
 
Also wenn ich das alles, was ich gelesen habe richtig verstanden habe, sucht man mit einem Loop alle möglichen Wege ab. Also aber bei einem raster von 20 auf 35 Klötzchen sind doch das ganz schön viele (millionen, milliarden?) Wird Flash da nicht gleich abkratzen bei dem Loop? Hat das überhaupt einen Sinn, Flash alle Wege durchrechnen zu lassen, oder geht das etwa 10min, bis er's hat?

MfG VoodOsK
 
VoodOsK hat gesagt.:
Also wenn ich das alles, was ich gelesen habe richtig verstanden habe, sucht man mit einem Loop alle möglichen Wege ab.
Na ja, nicht ganz. Man kann ja auch noch eine Heuristik mit in's Spiel bringen.

Ich hab gerade eben noch eine sehr schöne Resource zu Suchalgorithmen allgemein und zu A* im speziellen gefunden: http://theory.stanford.edu/~amitp/GameProgramming/

Lies es dir einfach mal durch und schau dir die Bilder an (hilft oft schon viel). Wenn Fragen auftauchen, frag einfach :)

Ach ja, bei einem 20×35 Kästchen großen Feld brauchst du dir keine Gedanken machen – bei ordentlicher Programmierung ist da ganz fix ein (kürzester) Weg gefunden :)
 
.. wobei der Flashplayer bei längeren Berechnungen oder Rekursionen von mehr als ca. 250 Schritten gerne mal Probleme macht. In dem Fall sollte man dem Player in gewissen Abständen durch einen onEnterFrame die Möglichkeit zum Aktualisieren geben.

Gruß
.
 
Hmm...ich weiss nich ob ich mir das zutrauen will :(

Ich probiers einfach mal mit der Suche nach dem schnellsten Weg, ohne Hindernisse...

Aber bevor ich starte habe ich noch 2 Fragen:
-Wie finde ich heraus, ob es rechts neben der "Einheit"(so nenne ich meinen Punkt mal, der vom einen Bildschirmrand zum anderen flitzen soll) noch ein Feld hat, das betretbar ist?
-Hat jemand von euch das schon mal in Flash realisiert? Also nicht, dass ich mir hier die grösste Mühe gebe und ich mich miserabel fühle wenns nicht klappt und eigentlich es noch kein anderer vor mir geschafft hat. ;)

MfG VoodOsK
 
Weißt du was... ich probiers jetzt einfach mal... der Thread hat mich schon ziemlich neugierig gemacht. Werds dir dann posten (oder vllt. nen Tut schreibeN) :)
 

Neue Beiträge

Zurück