Hallo,
hab ne Frage zum Gruppenverhalten. Ich hab ne Gruppe aus Einheiten (dargestellt als Kreise radius 32 auf dem Bildschirm) die sich abhängig von einem vector anders verhalten wie z.B. einem Pfad folgen, einem Leader folgen oder sich einfach nur auf ein Ziel(maus) zubewegen und dort ankommen. Die einzelnen Verhaltensmuster lassen sich je nach implementierung beliebig kombinieren. Das ganze funktioniert bei mir in Ansätzen ganz gut, allerdings bring ich nachdem z.B. der leader sein ziel abhängig von seinem Pfad erreicht hat den rest der Gruppe nicht zum stehenbleiben. Es scheint als ob jedes Mitglied der gruppe das Ziel des leader anpeilt und versucht genau dorthin zu kommen. Ich möchte eig. keine Formationen der Gruppe implementieren, dort ist es ja klar jedem Gruppenmitglied, nachdem der leader sein Ziel erreicht hat abhängig von diesem den anderen die jeweiligen Formationspositionen zuzuweisen, sondern einfach einen zufälligen Haufen aus Einheiten, die sich nach Erreichen des Ziels nicht mehr so unkoordiniert bewegen. Die andere Möglichkeit die ich bereits versucht habe ist nach jedem update der einzelnen einheiten den Geschwindigkeitsvektor mit 0 zu multitplizieren was aber nur minimale veränderungen erzielt hat.
Ums mal runterzubrechen ich habe 10 Einheiten, die ein Ziel(Maus) anpeilen(arriveMethode) und nachdem die erste Einheit dasselbe erreicht hat, bleibt die erste kurz am Ziel stehen bis alle nachgerückt sind und schließlich schwirren wieder alle weiter herum. Wie verhindert man das "Herumschwirren"?
Grüße Eichelhäer
hab ne Frage zum Gruppenverhalten. Ich hab ne Gruppe aus Einheiten (dargestellt als Kreise radius 32 auf dem Bildschirm) die sich abhängig von einem vector anders verhalten wie z.B. einem Pfad folgen, einem Leader folgen oder sich einfach nur auf ein Ziel(maus) zubewegen und dort ankommen. Die einzelnen Verhaltensmuster lassen sich je nach implementierung beliebig kombinieren. Das ganze funktioniert bei mir in Ansätzen ganz gut, allerdings bring ich nachdem z.B. der leader sein ziel abhängig von seinem Pfad erreicht hat den rest der Gruppe nicht zum stehenbleiben. Es scheint als ob jedes Mitglied der gruppe das Ziel des leader anpeilt und versucht genau dorthin zu kommen. Ich möchte eig. keine Formationen der Gruppe implementieren, dort ist es ja klar jedem Gruppenmitglied, nachdem der leader sein Ziel erreicht hat abhängig von diesem den anderen die jeweiligen Formationspositionen zuzuweisen, sondern einfach einen zufälligen Haufen aus Einheiten, die sich nach Erreichen des Ziels nicht mehr so unkoordiniert bewegen. Die andere Möglichkeit die ich bereits versucht habe ist nach jedem update der einzelnen einheiten den Geschwindigkeitsvektor mit 0 zu multitplizieren was aber nur minimale veränderungen erzielt hat.
Ums mal runterzubrechen ich habe 10 Einheiten, die ein Ziel(Maus) anpeilen(arriveMethode) und nachdem die erste Einheit dasselbe erreicht hat, bleibt die erste kurz am Ziel stehen bis alle nachgerückt sind und schließlich schwirren wieder alle weiter herum. Wie verhindert man das "Herumschwirren"?
Grüße Eichelhäer