PacMan - Pathfinding - er findet den Weg nicht!
-
TGGC schrieb:
Optimizer schrieb:
A* läuft nicht, bis es an ein Hinderniss stößt und geht auch nicht einfach an der Wand entlang bis es vielleicht mal wieder in Zielrichtung weiter geht. A* "probiert" auch nicht in dem Sinne aus, wie ich es beschrieben habe.
Sondern? A* weiss schon vor dem "Hinderniss", das es ausweichen muss?
wie optimiser schon sagte, bewegt sich A* nicht auf eine wand zu und dann an ihr entlang, du kannst es ihm ruhig glauben, er hat das bis zur verdammniss implementiert/optimiert (soweit ich weiß)
rapso->greets();
-
Na dann sagt es doch mal, damit ich nicht dumm sterben muss. Woher weiss A* schon, das stur geradeaus laufen nicht funktionieren wird, bevor er das "Hinderniss" findet?
-
Ich weiss, worauf du hinauswillst. Natürlich muss man (vor dem Losgehen!) voraus schauen, ob da ein Hinderniss liegt. Aber die Figur (oder was auch immer) muss da nicht erst hingehen und dagegen stoßen, wie es bei simplen Trace Algorithmen der Fall ist.
Weitere Fragen an Mr. Google. Du weisst genau, wie A* funktioniert.
-
Optimizer schrieb:
Ich weiss, worauf du hinauswillst. Natürlich muss man (vor dem Losgehen!) voraus schauen, ob da ein Hinderniss liegt. Aber die Figur (oder was auch immer) muss da nicht erst hingehen und dagegen stoßen, wie es bei simplen Trace Algorithmen der Fall ist.
Du hast "Tracealgorithmus" nicht genau definiert. A* probiert genau in dem Sinne, wie du es beschrieben hast.
Optimizer schrieb:
Du weisst genau, wie A* funktioniert.
Korrekt, soll ich ihn Dir erklären?
Bye, TGGC
-
Ich muss den Trace nicht genau definieren. Ich habe gesagt, dass ein Trace Algorithmus für PacMan ausreichen dürfte, nicht mehr und nicht weniger.
Korrekt, soll ich ihn Dir erklären?
Nein danke, ich habe ihn bereits selber erfolgreich implementiert, du siehst, du bist nicht der einzige ultimative Gott auf dieser Welt. Also kein Grund, so aufgeblasen zu sein.
-
Optimizer schrieb:
Ich muss den Trace nicht genau definieren. Ich habe gesagt, dass ein Trace Algorithmus für PacMan ausreichen dürfte, nicht mehr und nicht weniger.
Aber dann ist es IMHO irgendwie sinnlos, wenn du auf einen Tracealgorithmus hinweist, aber nicht angeben kannst wie oder wo er definiert ist. Ich könnte auch sagen der AlphaOmega3 Algorithmus ist der beste für PacMan, bringt aber auch keinem etwas.
Optimizer schrieb:
Korrekt, soll ich ihn Dir erklären?
Nein danke, ich habe ihn bereits selber erfolgreich implementiert, du siehst, du bist nicht der einzige ultimative Gott auf dieser Welt. Also kein Grund, so aufgeblasen zu sein.
Ruhig bleiben, war doch nur ein Angebot. Ausserdem weiss ich das doch, aber wie in meiner Sig steht, der Andere ist gerade nicht da.
-
die definition davon findest du bei google.. oder direckt bei gamasutra.com nach pathfinding suchen.
und wenn ich raten soll ist A* ist mit sicher kein simples tracing, ein unterschied wäre z.b. dass simples tracing, wenn es keinen weg zum ziel gibt, ohne abbruch fortlaufen würde, A* hingegen merkt dass es keinen weg gibt, wenn es keinen gibt, bei richtiger implementierung ist es nicht möglich dass A* endless läuft.
rapso->greets();
-
die definition davon findest du bei google.
Das habe ich schon probiert, bevor ich das erste mal danach gefragt habe, macht man ja immer. Das Schlagwort scheint im Zusammenhang mit pathfinding nicht bekannt zu sein.
A* ist mit sicher kein simples tracing
Kann sein, ist ja ungeklärt, was "simples tracing" genau ist. Aber A* beginnt genau so zu suchen, wie oben beschrieben. Vielleicht ist es ja kompliziertes Tracing?
-
vielleicht ist ja mit "simplem tracing" auch einfach das ausprobieren aller möglichkeiten gemeint
bye
apo
-
TGGC schrieb:
Aber dann ist es IMHO irgendwie sinnlos, wenn du auf einen Tracealgorithmus hinweist, aber nicht angeben kannst wie oder wo er definiert ist. Ich könnte auch sagen der AlphaOmega3 Algorithmus ist der beste für PacMan, bringt aber auch keinem etwas.
Es ist vielleicht nicht der beste, aber er dürfte reichen. Ich habe in etwa beschrieben, wie er funktioniert, er läuft bis er auf ein Hinderniss stößt und geht um das dann herum (siehe oben).
Auf Gamasutra gibt es ein Programm, wo man sich die beiden Algorithmen "simple trace" und "robust trace" anschauen kann.