pathfinding ohne dim array als map

Übersicht BlitzBasic Beginners-Corner

Neue Antwort erstellen

 

TeDy14

Gast

Betreff: pathfinding ohne dim array als map

BeitragMi, Jan 23, 2008 17:03
Antworten mit Zitat
Also
Ich habe folgendes Problem ...
Ich möchte in meinem Spiel Pathfinding reinprogrammieren alleidings habe ich keinen array(Worin die map gespeichert ist) so wie die meisten hier.

Ich habe nur einen Typ (Hindernisse) mit den Koordinaten, dem typ , das bild , gebenden falls noch wie groß das hinderniss ist.

Wie konnte ich jetzt pathfinding realisieren ?

BladeRunner

Moderator

BeitragMi, Jan 23, 2008 18:18
Antworten mit Zitat
Benutzer-Profile anzeigen
Ohne eine karte in irgendeiner Form wird das sehr schwer. Gibt es einen speziellen Grund warum du kein array hast ?
Zu Diensten, Bürger.
Intel T2300, 2.5GB DDR 533, Mobility Radeon X1600 Win XP Home SP3
Intel T8400, 4GB DDR3, Nvidia GF9700M GTS Win 7/64
B3D BMax MaxGUI

Stolzer Gewinner des BAC#48, #52 & #92
 

TeDy14

Gast

BeitragMi, Jan 23, 2008 20:14
Antworten mit Zitat
BladeRunner hat Folgendes geschrieben:
Ohne eine karte in irgendeiner Form wird das sehr schwer. Gibt es einen speziellen Grund warum du kein array hast ?

Das Problem ist halt das es große maps werden... GROßE maps
und ein array kann ja keine 20000 spalten haben...

BladeRunner

Moderator

BeitragMi, Jan 23, 2008 20:36
Antworten mit Zitat
Benutzer-Profile anzeigen
Auf einer derart großen Map wird dir jede komplexere Berechnung, also auch Pathfinding, zusammenbrechen, weil es einfach zuviel Leistung zieht.
Das Problem ist also schlicht dass Du was willst was so nicht geht. Mach die Karten kleiner, überschaubarer und lade sie bei Bedarf nach, dann kannst du große Maps und Pathfinding machen.

(nur so als Beispiel: 20000*20000 -> 400.000.000 Byte Info wenn die Karte nur einen Layer mit max. 256 verschiedenen Tiles hat. Bei Integern sind wir schon bei 1.600.000.000 -> 1.49 GIGABYTE Speicher für die Map.
Ich weiss ja nicht was dir vorschwebt, aber das ist fern jeder Realität.
Zu Diensten, Bürger.
Intel T2300, 2.5GB DDR 533, Mobility Radeon X1600 Win XP Home SP3
Intel T8400, 4GB DDR3, Nvidia GF9700M GTS Win 7/64
B3D BMax MaxGUI

Stolzer Gewinner des BAC#48, #52 & #92
 

TeDy14

Gast

BeitragMi, Jan 23, 2008 22:01
Antworten mit Zitat
Ohha Very Happy

Das ist etwas viel ^^

Naja...
mach ich lieber kein pathfinding ...
aber thx für die hilfe
 

Dreamora

BeitragMi, Jan 23, 2008 22:08
Antworten mit Zitat
Benutzer-Profile anzeigen
Nicht zwingend.
Aber es wird komplexer.
HPA* (Hierarchical A*) könnten da durchaus funktionieren und ein spezielles Datenformat für die verschiedenen "Hierarchie" Level so das du zur laufzeit daten laden kannst. Das sollte eigentlich nicht ma so schwer umzusetzen sein, da du nur immer den aktuellen hierarchie level brauchst und für die Detailsuche von einem einzigen Toplevel Node den darunterliegenden Pfadplan. Dabei kann das ganze mehr als nur 2 Layer haben. Ich würde vorschlagen, dass du dir überlegst wieviele Knoten in einer Ebene jeweils im Grid sein sollen und teils entsprechend auf.
Wenn du dich dafür interessierst, such nach dem Paper "Near-Optimal Hierarchical Pathfinding (HPA*)" von "A. Botea, M. Müller, and J. Schaeffer. presented by Marc Lanctot"
Evtl. leicht technisch, zeigt aber wie das ganze funktioniert und wie man den übergang der Subgrids mit eingang und ausgang errechnet etc.


wenn du mit Node Maps arbeitest statt mit sovielen Zellen, dann schau dir Dijkstra an. Vermutlich die beste Lösung ohne etwas höchst komplexes zu implementieren Smile
Ihr findet die aktuellen Projekte unter Gayasoft und könnt mich unter @gayasoft auf Twitter erreichen.

Neue Antwort erstellen


Übersicht BlitzBasic Beginners-Corner

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group