Files |  Tutorials |  Articles |  Links |  Home |  Team |  Forum |  Wiki |  Impressum

Aktuelle Zeit: Di Jul 08, 2025 18:29

Foren-Übersicht » Programmierung » Einsteiger-Fragen
Unbeantwortete Themen | Aktive Themen



Ein neues Thema erstellen Auf das Thema antworten  [ 12 Beiträge ] 
Autor Nachricht
 Betreff des Beitrags: Bounding Boxen
BeitragVerfasst: Fr Jan 30, 2004 18:48 
Offline
DGL Member
Benutzeravatar

Registriert: Mi Jan 07, 2004 23:14
Beiträge: 42
Hallo
Ich möchte Bounding Boxen zur Kollisionsabfrage verwenden.
Ich habe hier im Forum irgendwo gelesen, dass man für jeden Raum nur eine Bounding Box verwenden muss. Also seh ich es richtig wenn sich eine Box völlig in einer anderen befindet, gibt es keine Kollision? Also geben bloß die "Wände' eine Kollision?

Und noch was: Wenn ich Bounding Boxen erstellen, bewegen die sich bei glrotate/gltranslate mit?


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Re: Bounding Boxen
BeitragVerfasst: Sa Jan 31, 2004 17:59 
Offline
DGL Member
Benutzeravatar

Registriert: Mo Sep 23, 2002 19:27
Beiträge: 5812
Programmiersprache: C++
flowstar hat geschrieben:
Also seh ich es richtig wenn sich eine Box völlig in einer anderen befindet, gibt es keine Kollision? Also geben bloß die "Wände' eine Kollision?

Ja, Kollision ist nur dann wenn z.B. eine Sphäre die den Spieler repräsentiert von einer BB-Wand intersektioniert wird.

flowstar hat geschrieben:
Und noch was: Wenn ich Bounding Boxen erstellen, bewegen die sich bei glrotate/gltranslate mit?

Nein, BBs musst du selbst rotieren bzw. verschieben.

_________________
www.SaschaWillems.de | GitHub | Twitter | GPU Datenbanken (Vulkan, GL, GLES)


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Sa Jan 31, 2004 21:45 
Offline
DGL Member
Benutzeravatar

Registriert: Fr Dez 13, 2002 12:18
Beiträge: 1063
Das kommt auch auf die Art deiner Kollisionsabfrage drauf an, ob du auch überprüfst, ob sich etwas vollständig innerhalb der Box befindet.
Schneller sind ohnehin Bounding Spheres, die zumeist ebenfalls ausreichen - bei denen muss man sich auch nicht um die Orientierung kümmern.

_________________
Viel Spaß beim Programmieren,
Mars
http://www.basegraph.com/


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Sa Jan 31, 2004 22:47 
Offline
DGL Member
Benutzeravatar

Registriert: Sa Dez 28, 2002 11:13
Beiträge: 2244
Kugeln sind zu Darstellung eines Spielers nicht so gut geeignet, weil man dann zur Wand des gleichen Abstand hat wie noch oben oder unten. Das ist aber nicht der Fall und wirkt daher unnatürlich. Bounding Boxen sind praktisch nicht langsamer. Der einzige Zusatz ist, daß die zu prüfenden Entfernung nicht konstant wie bei einer Kugel ist, sondern von der Ausrichtung der Ebene abhängt.


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: So Feb 01, 2004 22:54 
Offline
Guitar Hero
Benutzeravatar

Registriert: Do Sep 25, 2003 15:56
Beiträge: 7810
Wohnort: Sachsen - ERZ / C
Programmiersprache: Java (, Pascal)
Ich kenn mich mit dem Thema überhaupt nicht aus aber was mich interessieren würde: Könnte man da nicht "Bouding Cylinders" nehmen? :oops: Da kann man den Radius schön eng machen und nach oben und unten kann man größere Abstände nehmen. Oder was spricht da dagegen? :roll:

_________________
Blog: kevin-fleischer.de und fbaingermany.com


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: So Feb 01, 2004 23:50 
Offline
DGL Member
Benutzeravatar

Registriert: Sa Dez 28, 2002 11:13
Beiträge: 2244
Zylinder ginge von der Form her auch. Ich bezweifele allerdings, daß die Umsetzung einfacher ist. Außerdem gibt's ja auch noch andere Figuren außer Menschen, und da könnte eine Bounding Box flexibler sein. Tatsäclich wird beides benutzt: UT verwendet Zylinder, Quake verwendet Bounding Boxen.


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Mo Feb 02, 2004 12:35 
Offline
DGL Member
Benutzeravatar

Registriert: Fr Dez 13, 2002 12:18
Beiträge: 1063
@Kugeln schlecht
Stimmt, als alleiniger Kollisionstest sind sie suboptimal. Normalerweise hat man aber auch noch eine "allgemeine" Kollision in petto, sodass für den schnellen Ausschluss, ob diese überhaupt notwendig ist, bzw. für den Frustumtest von sehr vielen Objekten Bounding Spheres IMHO besser geeignet sind.

Open Inventor z.B. stellt gleich verschiedene Tests zur Verfügung
Bounding Shere -> Bounding Box oder Bounding Cylinder -> Kollision mit vereinfachtem Mesh -> exakte Kollision, was für ein einfaches Spiel aber Overkill ist.

_________________
Viel Spaß beim Programmieren,
Mars
http://www.basegraph.com/


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Do Feb 05, 2004 00:23 
Offline
DGL Member
Benutzeravatar

Registriert: Mi Jan 07, 2004 23:14
Beiträge: 42
hab mich jetzt daran vesucht bin aber bis jetzt gescheitert.
Kennt jemand ein Tutorial zu Bounding Boxen und Spheres?


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Mo Feb 09, 2004 18:20 
Offline
DGL Member
Benutzeravatar

Registriert: Mi Jan 07, 2004 23:14
Beiträge: 42
kennt denn niemand ein einfaches Beispiel für Bounding Boxen?
Bei dem auf DelphiGL steig ich irgendwie nicht durch.
Bitte helft mir


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Mo Feb 09, 2004 18:29 
Offline
DGL Member
Benutzeravatar

Registriert: Mo Sep 23, 2002 19:27
Beiträge: 5812
Programmiersprache: C++
Dieser Artikel auf Gamasutra (kostenlose Registrierung erforderlich) erklärt die Thematik eigentlich recht gut. Der "Mangel" an komplexen Artikeln zu diesem Thema stammt wohl daher, dass es auf diesem Gebiet ganz einfach nicht viel zu erklären gibt. Ne Bounding Box zu erstellen ist verdammt einfach (da man ja die Vertexdaten hat), und zu prüfen ob ne Box mit ner anderen Box kollidiert ist auch recht einfach. Bei AABBs wirds dann ein wenig schwerer.

_________________
www.SaschaWillems.de | GitHub | Twitter | GPU Datenbanken (Vulkan, GL, GLES)


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Di Feb 10, 2004 11:42 
Offline
DGL Member

Registriert: Mi Okt 16, 2002 15:06
Beiträge: 1012
So um zu gucken wie die einzelnen collision funktionieren, welcher fall wo anwendbar ist z.b.

hier ne kleine demo von mir:

http://www.xenorate.com/final/Collision.zip


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Di Feb 10, 2004 13:47 
Offline
DGL Member
Benutzeravatar

Registriert: Mi Jan 07, 2004 23:14
Beiträge: 42
danke habs jetzt hinbekommen mit der Kollision


Nach oben
 Profil  
Mit Zitat antworten  
Beiträge der letzten Zeit anzeigen:  Sortiere nach  
Ein neues Thema erstellen Auf das Thema antworten  [ 12 Beiträge ] 
Foren-Übersicht » Programmierung » Einsteiger-Fragen


Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 19 Gäste


Du darfst keine neuen Themen in diesem Forum erstellen.
Du darfst keine Antworten zu Themen in diesem Forum erstellen.
Du darfst deine Beiträge in diesem Forum nicht ändern.
Du darfst deine Beiträge in diesem Forum nicht löschen.
Du darfst keine Dateianhänge in diesem Forum erstellen.

Suche nach:
Gehe zu:  
  Powered by phpBB® Forum Software © phpBB Group
Deutsche Übersetzung durch phpBB.de
[ Time : 0.008s | 15 Queries | GZIP : On ]