Kollision und co........

Übersicht BlitzBasic Blitz3D

Neue Antwort erstellen

tft

Betreff: Kollision und co........

BeitragSo, Jan 25, 2004 14:32
Antworten mit Zitat
Benutzer-Profile anzeigen
Hi.........

Kennt sich hir jemand mit Kollisons Physik aus? Ich brauche eine einfache funktion die es mir erlaubt. Aus wenigen Parametern eine Vernünftige Kollisions reacktion zu erzeugen.

Z.B. Zwei objecte mit den geschwindigkeiten x1 und x2 stossen zusammen. Auf grund der Flechen die Zusammenstossen soll sich die neue richtung und die neue Geschwindigkeit ergeben.

Ich selber bin mit dieser Matherie überhaupt nicht vertraut. Kann da einer helfen?
TFT
https://www.sourcemagic.ch
Monkey,HTML5,CSS3,W 10 64 Bit, 32 GB Ram, GTX Titan, W8 ist Müll !!!!!!
 

jaZ

BeitragSo, Jan 25, 2004 15:36
Antworten mit Zitat
Benutzer-Profile anzeigen
tip:
einfallswinkel = ausfallswinkel.
für die neue richtig brauchste ebendie normale da vo dein teil draufknallt und den richtungs vektor deines objects. dann eben den winkel dazwischen berechnen. die richtung nach dem prinzip oben verändern.

tip2:
masse * geschwindigkeit = impuls.
impuls ist eben wie stark dein dein da drauf haut. so kannste die neue flugbahn deines objectes und deinens kolliosionsteils berrechenen. mehr bruachste nicht.
--DRRRSCH!!--

Markus2

BeitragSo, Jan 25, 2004 16:37
Antworten mit Zitat
Benutzer-Profile anzeigen
Hi,
so müste es gehen .
dc ist die Collisionsnormale nx,ny,nz
V3D ist also ein Type mit x,y,z

Code: [AUSKLAPPEN]

Function BallBounce(b1.BallType,b2.BallType,dc.V3D)

 Local vdot1#
 Local vdot2#
 Local optimizedP#
 
 vdot1=b1\Geschwindigkeit\x*dc\x + b1\Geschwindigkeit\y*dc\y + b1\Geschwindigkeit\z*dc\z
 vdot2=b2\Geschwindigkeit\x*dc\x + b2\Geschwindigkeit\y*dc\y + b2\Geschwindigkeit\z*dc\z

 optimizedP = (2.0 * (vdot1-vdot2)) / (b1\Masse + b2\Masse)

 b1\Geschwindigkeit\x =b1\Geschwindigkeit\x - optimizedP * b2\Masse * dc\x
 b1\Geschwindigkeit\y =b1\Geschwindigkeit\y - optimizedP * b2\Masse * dc\y
 b1\Geschwindigkeit\z =b1\Geschwindigkeit\z - optimizedP * b2\Masse * dc\z

 b2\Geschwindigkeit\x =b2\Geschwindigkeit\x - optimizedP * b1\Masse * -dc\x
 b2\Geschwindigkeit\y =b2\Geschwindigkeit\y - optimizedP * b1\Masse * -dc\y
 b2\Geschwindigkeit\z =b2\Geschwindigkeit\z - optimizedP * b1\Masse * -dc\z

End Function

 

jaZ

BeitragSo, Jan 25, 2004 17:16
Antworten mit Zitat
Benutzer-Profile anzeigen
ach mensch markus...
die user sollen doch was lernen und nicht copy und pasten.. Very Happy
--DRRRSCH!!--

Markus2

BeitragMo, Jan 26, 2004 13:42
Antworten mit Zitat
Benutzer-Profile anzeigen
jaZ hat Folgendes geschrieben:
ach mensch markus...
die user sollen doch was lernen und nicht copy und pasten.. Very Happy


1:1 kann man das ja auch nicht übernehmen Wink

Neue Antwort erstellen


Übersicht BlitzBasic Blitz3D

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group