Du bist nicht angemeldet.

Stilllegung des Forums
Das Forum wurde am 05.06.2023 nach über 20 Jahren stillgelegt (weitere Informationen und ein kleiner Rückblick).
Registrierungen, Anmeldungen und Postings sind nicht mehr möglich. Öffentliche Inhalte sind weiterhin zugänglich.
Das Team von spieleprogrammierer.de bedankt sich bei der Community für die vielen schönen Jahre.
Wenn du eine deutschsprachige Spieleentwickler-Community suchst, schau doch mal im Discord und auf ZFX vorbei!

Werbeanzeige

1

13.08.2017, 13:33

Kollisionsvermeidung

Hallo,

kurz gesagt: ich brauche das was Total War bei den Schlachten hat.

Ich meine ich kann Bataillone von Einheiten durch eigene Einheiten durch schicken und die vielen einzelnen Figuren weichen aus. Das selbe Funktioniert für Bäume oder wenn Sie auf Gegner prallen. Alles problemlos obwohl mehrere tausend Einheiten zugleich unterwegs sind. Wie zur Hölle machen die das?! Kann ja kein Hexenwerk sein :D

Anbei nochmal ein Bild


(Link)

KeksX

Community-Fossil

Beiträge: 2 107

Beruf: Game Designer

  • Private Nachricht senden

2

13.08.2017, 16:15

Einfach den Begriff mal im Englischen in die Suche eingeben, da findest du extrem viel Material ;)
https://scholar.google.de/scholar?hl=de&…dance&btnG=&lr=
https://www.google.de/search?q=Collision…ision+avoidance

Total War im Speziellen verwendet einen Flocking Algorithm, gibt da einige gute Videos zu:
https://www.youtube.com/watch?v=Bdu5_Q5QI2Q

Und eine anscheinend brauchbare Masterarbeit dazu findet man auch:
http://www8.cs.umu.se/education/examina/…vistDimberg.pdf


Es ist kein Hexenwerk, aber einfach ist es auch nicht.
WIP Website: kevinheese.de

3

13.08.2017, 17:12

Danke KeksX

dachte nicht das mein "Wort dafür" es schon so genau trifft. Flocking sieht nach dem richtigen Stichwort für das gesuchte aus. Ich fange morgen damit an. Ich frage mich nur wie man die Detektion ressourcensparend umsetzen soll. Meine erste Idee wäre halt jedem Entity einen for-loop zu geben, der schaut wie weit die anderen Entitys weg sind. Aber bei 1000 Entitys würde das ja bedeuten, ich habe 1000 for loops die 1000 object durchlaufen, jeweils, pro frame.... egal, schau ich mir morgen an :-)

kleiner Nachtrag: ich habe etwas lua code gefunden ... WTF derjenige macht das so wie ich beschrieben habe, mit dem 1000x1000 loop 8| da muss es etwas besseres geben...

Nachtrag 2: in der Master Thesis habe ich das gefunden, was ich mir gedacht habe. Jeder Einheit registriert sich auf ein Tile. So muss dann nicht jede Einheit durch jede andere loopen, sondern es kann lediglich abgefragt werden welche Einheiten sich in der eigenen und eventuell in Nachbar Tiles registriert haben....

Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von »NoAim91« (13.08.2017, 17:53)


David Scherfgen

Administrator

Beiträge: 10 382

Wohnort: Hildesheim

Beruf: Wissenschaftlicher Mitarbeiter

  • Private Nachricht senden

4

13.08.2017, 17:40

Ja, da gibt es Besseres, nämlich räumliche Datenstrukturen (wieder ein Begriff zum Recherchieren). Du bist ja eigentlich nur an den Einheiten in unmittelbarer Nähe interessiert. Ein Gitter/Grid ist wohl am einfachsten zu implementieren.

5

13.08.2017, 17:55

danke David

hatte das auch gerade bei der Master Thesis gelesen :-)

Ich dachte mir so was in die Richtung auch schon, hab´s aber wieder verworfen .... werd´s so in Angriff nehmen

Werbeanzeige