Autor |
Beitrag |
WormHole
      
Beiträge: 145
|
Verfasst: Mi 28.06.06 11:30
Hallö,
ich "arbeite" gerade an einem Projekt in dem es eine Ampelkreuzung gibt und dort Autos fahren. Am Anfang habe ich es so gemacht, dass ich die Autos einfach von einem Bildrand zum anderen schicke und halt auf die Ampelphasen geachtet habe. Aber da das ziemlich sch**** vom Stil her ist und auch so unpragmatisch ist, wollte ich wohl gerne, das die Autos selbst entscheiden wo sie herfahren... Also sozusagen eine KI erstellen. Leider habe ich im Moment noch keine Ahnung wie ich das anstellen soll -_-
Gruß WormHole
|
|
azubi_20
      
Beiträge: 593
WinXP SP2, Ubuntu 8.4
D7 Enterp., D2005 Prof., Java (Eclipse 3.4.0)
|
Verfasst: Mi 28.06.06 11:55
Quelltext 1: 2: 3:
| fahr geradeaus wenn kreuzung dann zufall (links, rechts, geradeaus) wenn sackgasse dann dreh um |
ist zwar nicht intelligent, aber dafür recht simpel zu programmieren
|
|
WormHole 
      
Beiträge: 145
|
Verfasst: Mi 28.06.06 13:07
Wie kann ich denn bei einem Image sagen, fahr geradeaus?
Links oder rechts geht ja simpel mit image.left und .top aber geradeaus?
|
|
Spaceguide
      
Beiträge: 552
(D3/D7/D8) Prof.
|
Verfasst: Mi 28.06.06 13:09
Ich würde es so machen:
1) Jedem Auto einen zufälligen, befahrbaren Punkt auf der Karte zuordnen
2) Mittels A*-Algorithmus die Wegplanung vornehmen
3) Wenn Ziel erreicht, einfach neuen Zielpunkt aussuchen
|
|
crowley
      
Beiträge: 406
Win XP, Win Vista, Mandriva, Ubuntu
Delphi 4-8, Delphi 2006, Delphi 2007
|
Verfasst: Mi 28.06.06 13:21
WormHole hat folgendes geschrieben: | Wie kann ich denn bei einem Image sagen, fahr geradeaus?
Links oder rechts geht ja simpel mit image.left und .top aber geradeaus? |
links kannst du doch schon, rechts kannst du auch schon... und bei geradeaus bewegst du es weiter in die gleiche richtung wie zuvor...
bewegung auf der "karte" nach links: pic.left := pic.left - x;
bewegung auf der "karte" nach rechts: pic.left := pic.left + x;
bewegung auf der "karte" nach oben: pic.top := pic.top - y;
bewegung auf der "karte" nach unten: pic.top := pic.left + y;
|
|
WormHole 
      
Beiträge: 145
|
Verfasst: Mi 28.06.06 13:22
Spaceguide hat folgendes geschrieben: | Ich würde es so machen:
1) Jedem Auto einen zufälligen, befahrbaren Punkt auf der Karte zuordnen
2) Mittels A*-Algorithmus die Wegplanung vornehmen
3) Wenn Ziel erreicht, einfach neuen Zielpunkt aussuchen |
Hmm, was ist denn dieser A*-Algorithmus? Wo kann ich den herbekommen? Also zur Info: Ich bin nicht sonderlich gut in Delphi 
|
|
Spaceguide
      
Beiträge: 552
(D3/D7/D8) Prof.
|
Verfasst: Mi 28.06.06 13:26
WormHole hat folgendes geschrieben: |
Hmm, was ist denn dieser A*-Algorithmus? Wo kann ich den herbekommen? Also zur Info: Ich bin nicht sonderlich gut in Delphi  |
Keine Angst, Delphi-Forum.de ist fast ausschliesslich ein Anfängerforum. Bei Wikipedia ( de.wikipedia.org/wiki/A%2A) findest du eine gute Erklärung.
|
|
crowley
      
Beiträge: 406
Win XP, Win Vista, Mandriva, Ubuntu
Delphi 4-8, Delphi 2006, Delphi 2007
|
Verfasst: Mi 28.06.06 13:27
|
|
Spaceguide
      
Beiträge: 552
(D3/D7/D8) Prof.
|
Verfasst: Mi 28.06.06 13:32
crowley hat folgendes geschrieben: |
spaceguide meinte damit sicherlich den algorithmus, den azubi_20 weiter oben schon beschrieben hatte:
|
Falsch!
Hier eine Implementierung in Delphi: www.hanisch-software...iges/pathfinding.php
|
|
[emptyBox]
![[emptyBox] hat insgesamt 100.0% On-Topic und 0.0% Off-Topic Beiträge geschrieben. ontopic star](./graphics/ranks/star_ontopic_full.png) ![[emptyBox] hat insgesamt 100.0% On-Topic und 0.0% Off-Topic Beiträge geschrieben. ontopic star](./graphics/ranks/star_ontopic_full.png) ![[emptyBox] hat insgesamt 100.0% On-Topic und 0.0% Off-Topic Beiträge geschrieben. ontopic star](./graphics/ranks/star_ontopic_full.png) ![[emptyBox] hat insgesamt 100.0% On-Topic und 0.0% Off-Topic Beiträge geschrieben. ontopic star](./graphics/ranks/star_ontopic_full.png) ![[emptyBox] hat insgesamt 100.0% On-Topic und 0.0% Off-Topic Beiträge geschrieben. ontopic star](./graphics/ranks/star_ontopic_full.png) ![[emptyBox] hat insgesamt 100.0% On-Topic und 0.0% Off-Topic Beiträge geschrieben. ontopic star](./graphics/ranks/star_ontopic_full.png) ![[emptyBox] hat insgesamt 100.0% On-Topic und 0.0% Off-Topic Beiträge geschrieben. ontopic star](./graphics/ranks/star_ontopic_full.png)
Beiträge: 16
WIN XP Prof
Delphi 7 Pers.
|
Verfasst: Mi 28.06.06 13:54
hi,
Also wenn das ein anspruchsvolles Projekt werden soll, sollte man sich überlegen ob sich ein MapEditor lohnt. Durch diesen könnte man dann Wegpunkte (sowie natürlich auch das Level selber) setzen.
--> wenns mal auf ein GTA hinauslafen sollte ^^
|
|
WormHole 
      
Beiträge: 145
|
Verfasst: Mi 28.06.06 13:59
Nur wie kriege ich den Pathfinder Algorithmus bei mir hinein?
EDIT: Oder soll ich den nicht benutzen?
|
|
WormHole 
      
Beiträge: 145
|
Verfasst: Mi 28.06.06 16:44
Könnt ihr mir noch schnell helfen? Ich muss gleich wech und wollte wenigstens noch wissen wie ich das machen soll... *push*
|
|