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

Patrick

Alter Hase

  • »Patrick« ist der Autor dieses Themas

Beiträge: 1 264

Wohnort: Düren

Beruf: Fachinformatiker für Anwendungsentwicklung

  • Private Nachricht senden

1

08.09.2003, 19:54

MD3 Kollisionsabfrage

Hi,

ich steh vor einem Problem. Bei Statischen Modellen würd ich für ne genaue Kollision einen Octree verwenden, doch MD3 ist leider net sehr Statisch und arbeitet auf Bones UND KeyFrames.

Nun wie kann man da ne gute Kollisionsabfrage machen? Octree kann man irgendwie vergessen je nachdem wieviele Frames und Bones im Model drine sind.

Weis einer einen guten ansatz?

Tobiking

1x Rätselkönig

  • Private Nachricht senden

2

08.09.2003, 21:28

Ich weiß nicht ob es bei Quake 3 auch so gemacht wird aber bei Half-Life gibt es Hitboxen. kA ob die mit in der Model datei drin stehen oder ob die errechnet werden. Aber es die Box wird immer mitbewegt und gedreht usw. Habe das letztens erst bemerkt bei Counter-Strike. Habe mit der AWP an einem Stein vorbei einen erschossen den ich gar nicht mehr wirklich gesehen habe.

3

09.09.2003, 12:06

Ich weis zwar nicht bo die Hitboxen in Half-Life das selbe Prinzip haben, aber in Zerbis Buch Band zwei Arbeitet er mit nem Mix aus Achsen Ausgerichteten und Objekt Ausgerichteten Bounding Boxen. Die werden dann auch immer mit Transformiert. Das kannste dir ja mal anschauen.
Wichtig! Ich übernehme keinerlei Verantwortung für eventl. Datenverlust oder Schäden am Rechner ;D

Jens

Treue Seele

Beiträge: 117

Wohnort: Dresden

  • Private Nachricht senden

4

09.09.2003, 15:32

Kollisionsabfrage

wieso soll das nicht mit OcTree funzen?
Ich habe für jedes (Teil-)model eine Boundingbox.
Du kannst sie auch aus der Struktur
struct MD3BONEFRAME
{
float fMins[3];
float fMaxs[3]; // extrema of the bounding box
float pos[3]; // position of the bounding box
float scale; // scaling the bounding box
char creator[16];
};

auslesen. Musst sie aber skalieren, wenn Du beim Einlesen der Koordinaten ebenfalls skaliert hast.
Natürlich existiert für jeden Frame eine BB pro MD3-Teil-Modell.
Während der Laufzeit wird die entsprechende aus dem Framearray geholt.
Das geht sehr schnell.
Also ich habe eine Klasse CMD3CompleteModell abgeleitet, in der eine Liste von MD3-Modellen geladen wird (Head, Upper, Lower usw). Alle haben eine BB. Bei der Kollisionsabfrage wird in die BB "hineingegangen", die den ersten Test besteht.

Hast Du auch die MD3-Tags bei Animationen in den Griff bekommen?
Bis später...

Werbeanzeige