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

20.10.2006, 14:40

SDL: Kollisionskontrolle 2D finde nichts!

Hallo!
Ich arbeite gerade an meine erste kleine engine (2D).
Dort möchte ich auch eine ganz simple kollisionskontrolle einbauen die true zurücktgibt menn sich zwei rechtecke! treffen.
bekannt ist die linke obere Ecke und die breite sowie die höhe.
Wie kann ich das jetzt anstellen?
Gruß Flo ;)
Brauche umbedingt hilfe!!

David Scherfgen

Administrator

Beiträge: 10 382

Wohnort: Hildesheim

Beruf: Wissenschaftlicher Mitarbeiter

  • Private Nachricht senden

2

20.10.2006, 15:16

1. Blatt papier nehmen
2. Bleistift nehmen
3. Rechtecke mit Koordinaten draufmalen, die sich schneiden oder nicht schneiden
4. Hirn einschalten
5. Lösung finden

oder

1. Browser starten
2. zu Google oder anderer Suchmaschine gehen
3. suchen
4. Lösung finden

T-VIRUS

Alter Hase

Beiträge: 548

Wohnort: Göttingen(West)/Nordhausen(Ost)

Beruf: Schüler

  • Private Nachricht senden

3

20.10.2006, 15:37

Ist doch simpel :p
Dazu musst du nur testen ob die Koords der Vertexe bzw der Rechtecken sich überschneieden.
Wenn sie es tun gibt deine Funktion true zurück sonst false ;)
Meine Blog:)

Wer Bugs im Text findet kann sie melden, fix erscheint irgendwann :D

MFG T-VIRUS

David Scherfgen

Administrator

Beiträge: 10 382

Wohnort: Hildesheim

Beruf: Wissenschaftlicher Mitarbeiter

  • Private Nachricht senden

4

20.10.2006, 19:20

Zitat von »"T-VIRUS"«

Ist doch simpel :p
Dazu musst du nur testen ob die Koords der Vertexe bzw der Rechtecken sich überschneieden.
Wenn sie es tun gibt deine Funktion true zurück sonst false ;)

Es gibt noch einen Spezialfall, wo das nicht hinhaut.
(sprich: die Rechtecke schneiden sich, aber kein Eckpunkt des einen liegt im anderen Rechteck drin)

rklaffehn

Treue Seele

Beiträge: 267

Wohnort: Braunschweig

  • Private Nachricht senden

5

21.10.2006, 09:18

Hmm, so wie sich das liest, sind die Rechtecke nur achsparrallel definiert (x,y ; b;h), da ist die Version von T-VIRUS schon okay.

Aber manchmal scheitert es eben schon daran, wie man das Problem beschreibt 8) , darum hier mal zwei Sätze dazu.

Zwei achsparrallele Rechteecke R1, R2 überlappen, wenn es wenigstens eine Ecke aus R1 gibt, die innerhalb von R2 liegt oder wenigstens eine Ecke aus R2, die innerhalb von R1 liegt.

Für allgemeine Rechtecke kommt noch hinzu, dass sich R1 und R2 schneiden, wenn es wenigstens eine Seite aus R1 gibt, die sich mit einer Seite aus R2 schneidet.

Gruss,
Rainer
God is real... unless declared integer.
http://www.boincstats.com/signature/user_967277_banner.gif

Steven77

Alter Hase

Beiträge: 515

Wohnort: Münster - Gievenbeach

Beruf: Wissenschaftlicher Mitarbeiter

  • Private Nachricht senden

6

21.10.2006, 13:46

Kommen Sie nie mit einem Schwert zu einer Schießerei.

Werbeanzeige