Seite 1 von 3
					
				Suche Kollisionsprüfung Dreieck Dreieck
				Verfasst: 04.02.2010 14:05
				von mpz
				Hallo Leute,
ich hoffe Ihr könnt mir helfen. Ich benötige einen Algorythmus der im 2D Raum überprüft ob sich zwei Dreiecke überschneiden und  ich habe hier alle drei Eckpunkte als vectoren (x und y Wert). Bisher haben ich nur eine Prüfungsroutine ob sich ein Punkt in einer Dreecksfläche befindet, aber bei überlappenden Dreicken kann man das nicht verwenden. Im Internet etc. war ich bisher nicht richtig fündig...
Dreieck A hat x1,y1 und x2,y2 und x3,y3
Dreieck B hat x4,y4 und x5,y5 und x6,y6
Wie man hier bei meinem PC Programm sieht ist meine jetzige Lösung noch verbesserungswürdig. (Die Pixelüberprüfung ist schon fast fertig, aber vorher will ich eine "gedrehte Rechteckprüfung" machen)
http://em.q-soft.ch/files/get/nxOjSFtehK/test.exe
Gruß Michael
 
			
					
				Re: Suche Kollisionsprüfung Dreieck Dreieck
				Verfasst: 04.02.2010 14:23
				von Kaeru Gaman
				mpz hat geschrieben:Bisher haben ich nur eine Prüfungsroutine ob sich ein Punkt in einer Dreecksfläche befindet, aber bei überlappenden Dreicken kann man das nicht verwenden.
ehm... doch... zumindest meistens.
wenn du zwei dreiecke hast, die sich überlappen, befindet sich meistens mindestens ein punkt eines der dreiecke in der fläche des anderen.
sonderfall ist, wenn zwei besonders schlanke dreiecke quasi 90° zueinander stehen...
das ist wahrscheinlich der fall der dir kopfzerbrechen bereitet...?
aber mit der ersten prüfung deckst du bestimmt schon mal >90% der fälle ab.
 
			
					
				Re: Suche Kollisionsprüfung Dreieck Dreieck
				Verfasst: 04.02.2010 14:38
				von gnasen
				Für meine 
Kollisionsroutine habe ich Dreieck-Dreieck Kollision verwendet.
Kannst gerne den Quellcode zerlegen, wenn du fragen hast, einfach melden.
Und mal den Download erneuert, der alte war noch auf soner Filehoster Seite...
Habe noch gerade geschaut, die interessanten Funktionen sind:
_col_check_line und 
_col_point_tri. Diese werden in 
_col_obj_obj aufgerufen, um die Kollision von 2 Dreiecken zu prüfen.
Ansonsten kannst du die Include natürlich noch "normal" benutzen 

 
			
					
				Re: Suche Kollisionsprüfung Dreieck Dreieck
				Verfasst: 04.02.2010 14:44
				von STARGÅTE
				Mach halt eine Kollisionsabfrage zwischen den 3 Lines eines Dreiecks mit den anderen 3 Lines des andere Dreiecks, wäre dann 9 Abfragen. Also nicht viel mehr als du hättest wenn du die Ecken Abfrags ob sie im anderen Dreieck sind.
			 
			
					
				Re: Suche Kollisionsprüfung Dreieck Dreieck
				Verfasst: 04.02.2010 15:26
				von mpz
				Hi Danke,
scheint genau das zu sein was ich brauche. Problematisch wird es nur wenn eine Dreieck in einem Dreieck ist dann helfen die Prüfungen vermutlich nicht mehr. Aber Ausnahmen bestätigen die Regel...
Gruß Michael
			 
			
					
				Re: Suche Kollisionsprüfung Dreieck Dreieck
				Verfasst: 04.02.2010 15:45
				von STARGÅTE
				dafür kannst du ja noch checken ob der Schwerpunkt eines Dreicks im andere ist  

 
			
					
				Re: Suche Kollisionsprüfung Dreieck Dreieck
				Verfasst: 05.02.2010 02:02
				von mpz
				Hi,
Ich habe erst einmal noch meine Pixelprüfung mit einfacher Rechteckprüfung fertig gemacht. Morgen werde ich die gedrehte Dreiecks-Rechteckprüfung dazu programmieren. Mal sehen ob noch ein paar Fps dazu kommen  
 
 
Aber vorher noch eine kurze Frage an die Windows PC Besitzer. Auf wieviel Fps kommt ihr denn bei dem Beispiel? Ich habe hier nen X2 4000+ mit ner GTS 250 und komme auf 120 fps. Man sollte ein drehendes dreigeteiltes Sprite sehen was Bälle wegfegt, Anzahl der Sprites 4000...
http://em.q-soft.ch/files/get/YPRV3gfFFC/test3.exe
P.S: Noch nen "kleinen" Speicherbug entfernt
Gruß Michael
 
			
					
				Re: Suche Kollisionsprüfung Dreieck Dreieck
				Verfasst: 05.02.2010 03:00
				von CSHW89
				hi,
sehr merkwürdig, hab win xp x2 4200+ mit ner radeon x1950. bei mir gehts kann schon in die knie. minimalwert bei 20 fps. maximal so bei 30.
mfg kevin
			 
			
					
				Re: Suche Kollisionsprüfung Dreieck Dreieck
				Verfasst: 05.02.2010 03:20
				von Kaeru Gaman
				XP Pro sp2
Intel Core2 6320 @ 1.86GHz 2GB RAM
GF 8800 GT 512MB PCIE 16x @ 1920x1080
hoch bis 88 FpS bei 0° & 90°
runter bis 40 FpS bei 45°
			 
			
					
				Re: Suche Kollisionsprüfung Dreieck Dreieck
				Verfasst: 05.02.2010 08:28
				von Thorium
				Win 7 Pro x64
Intel Core i7 920 @2,66 Ghz 6GB RAM
GeForce GTX 260 896 MB
Maximal FPS: 356
Minimal FPS: 244