Entwickler-Ecke
Multimedia / Grafik - Bots in OpenGL
Wilder Stecher - Do 14.11.02 10:28
Titel: Bots in OpenGL
Hallo erst mal,
Ich begrüße erstmal alle, die diesen Artikel hier lesen. Ich hoffe das meine folgende Frage noch nicht gestellt wurde, wenn ja; dann möge man mir verzeihen. Danke.
Also
Als trueer Spieler wie ...Tournament, Quake, TO, CS
hat mal man die Lust auch so etwas in Nummer 'klein Format' zu machen. Mein größtes Problem liegt hierbei bei den 'Bots' Zwar weiß ich zwar wie man Figuren in OpenGL einfügt und teilweise bewegt bringe es aber noch nicht auf die Reihe die Figuren
:arrow: in XYZ Koordinaten zu bewegen
:arrow: Wegpunkte einzurichten
:arrow: Angreifen wenn ein Feind in der Nähe ist
Natürlich weiß ich, dass dies eine komplexe schwierige Frage ist, allerdings bräuchte ich halt nicht das allgemeine Wissen von OpenGL sondern nur von den ja mindestens 3 definierten Fragen . Source oder eine Internet Addresse wäre sehr wünschenswert. Und ein großes Schmankerl wäre es sicherlich an alle Profis und Administratoren SOURCE + aLLE dATEN HIER IM fORUM AUSZUSTELLEN: aLSO wenn ihr mir und so manchen anderen helfen wollt oder könnt, dann ran an euer Wissen.
Danke, für euer Verständnis
oder schreibt mir einfach mal was intereesantes was mir vielleicht doch was nützt.
Udontknow - Do 14.11.02 11:54
Hi.
Mal eine Frage: Was ist ein "trueer" Spieler? :mrgreen:
Zu deinem ersten Punkt:
Schnapp dir ein Tutorial über Vektoren, evtl. noch Matrizen, um Realisierung und Veränderung von Koordinatenangaben zu verstehen.
Zu 2.
Ja nu, Wegpunkte. Um mit einer Figur einen bestimmten Punkt zu erreichen, ohne durch Wände zu fliegen etc., wird ein wenig KI fällig. Kannst ja hier im Forum mal schauen, ansonsten googeln.
Zu3.
Das ist so allgemein, daß man da eigentlich nix zu sagen kann. Es ist nun einmal von deiner Implementation abhängig, was ein Angriff ist, wann ein Feind in der Nähe ist. Man kann wohl sagen, daß ein Bot angreifen sollte, wenn ein Gegner in seinem Blickfeld ist und er den Gegner auch tatsächlich sehen kann (Der Gegner ist also nicht vollständig versteckt).
Sorry, das es keinen Source gibt, aber den wird dir wohl kaum einer liefern können, es sind ja keine spezifischen, sondern sehr allgemein gehaltene Fragen.
Cu,
Udontknow
OregonGhost - Do 14.11.02 17:30
Nimm dir ein beliebiges Spiel, das mit dem großen U arbeitet, starte den Editor (heißt meist UnrealEd) und schau dir die Skripte für die Gegner an. Wenn ich mich recht erinnere, sind die Skripte für die KI direkt zugänglich und gut dokumentiert. Hab leider mein DX gerade net installiert, daher kann ich das nicht nachprüfen...
Kann auch sein, dass man die Skripte extrahieren oder runterladen muss... Schon so lange her, dass ich da zuletzt reingeguckt habe ;c)
Tja, und sonst natürlich noch einschlägige Anlaufstellen wie gamedev.net und gamasutra.com, beide haben ganz nette Artikel zu deinen Fragen.
Aya - Sa 16.11.02 19:53
Titel: Re: Bots in OpenGL
Hi,
Wilder Stecher hat folgendes geschrieben: |
:arrow: in XYZ Koordinaten zu bewegen
|
mit:
Wilder Stecher hat folgendes geschrieben: |
:arrow: Wegpunkte einzurichten
|
Na ja, einen wegpunkt ist ja im grunde nix als ne XYZ-Koordinate, dann mußt du halt dein Bot von dort wo er gerade steht, zu den neuen Koordinaten "laufen" lassen.. hat nix mit OpenGL zu tun, is reines Mathe *g* AnfangsPunkt, EndPunkt... Gerade dazwischen ziehen, und sagen wir jeden punkt im abstand von 1mm auf dieser Geraden die 3 Koordinaten berechnen... etc.. :) (evtl noch wände und so nen kram einbeziehen *g*)
Ich hab mal nen MiniSpiel gemacht (war im grunde nur zum Testen), war nen Labyrinth etc... na ja, das erste problem war das man nich durch wände laufen können durfte, nach einiger überlegerei hab ich's gelöst bekommen und wollte dann nen gegner haben *g* Na ja, den gegner hab ich wie oben beschrieben bewegt, jedoch ist er halt immer direkt gelaufen = Wände haben ihn nich gestört... also hab ich für ihn die selbe Kollisionsabfrage benutzt wie für meine eigene Figur und schon hat's geklappt :) Schön um die wände herumgelaufen.
Wilder Stecher hat folgendes geschrieben: |
:arrow: Angreifen wenn ein Feind in der Nähe ist
|
Wieder nur Mathe :)
du hast die XYZ Koordinaten vom Gegner und von dir selbst. wenn jetzt deine Koordinaten sagen wir näher als 20 Einheiten an denen des Gegners dran is, fängt ideser an zu schießen.
Da könnte man noch einbauen das es nur geht wenn du VOR ihm stehst etc.. :) Mathe Mathe Mathe... *g*
Hoffe ich hab dir ein wenig anstöße geben können... *Formelsammlung reicht* :)
Au'revoir,
Aya
Andreas Pfau - So 17.11.02 12:58
Noch ein kleiner Tipp: unter
http://www.idsoftware.com kannst Du dir den Qeulltext von Quake1-3 runterladen. Da steht sicherlich auch viel nützlicher KI-Sourcecode drin (wenn auch in C++).
Wilder Stecher - Di 19.11.02 22:59
Hi,
vielen Dank das ihr mir so schnell geantwortet habt. Zwar wird mein Problem noch in näster Zukunft schwierig zu bewältigen sein*vielleicht*, dennoch konnte ich vieles sinnvoll gebrauchen. Die Befehlszeile probiere ich gleich mal aus, die ersten zwei Internetaddressen bieten für jederman einiges, dennoch sind sie teilweise etwas unübersichtlich. Dass Quake ja in 'C++' ist, scheint für mich ein großes Schicksal zu sein. Fals dennoch irgendeiner mal eine andere Internetseite gefundet hat ,oder sogar weiß ,wäre ich sehr dankbar, wenn ihr mir diese schreiben würdet.
Bis dann,
W.S.
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2025 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!