Realistischer Abprall
Übersicht

![]() |
Egon DragonBetreff: Realistischer Abprall |
![]() Antworten mit Zitat ![]() |
---|---|---|
Hi!
Ich habe folgendes Problem: Und zwar kriege ich es nicht hin, das zwei kugeln realistisch voneinander abprallen, wenn sie sich berüren. Die eine Kugel bewegt man mit den Pfeiltasten, die andere mit W,A,S,D... Code: [AUSKLAPPEN] Graphics 800,600,16,1 SetBuffer BackBuffer() ;-->Type<-- Type ball Field x#,y# ;<--X und Y Position Field sx#,sy# ;<--X und Y Speed Field s# ;<--Speed Field richtung ;<--Richtung in Grat (0-359) Field rechts,links,vor ;<--Tasten End Type ;-->2 Bälle erschaffen<-- b.ball=New ball b\x=100 b\y=300 b\richtung=0 b\rechts=205 b\links=203 b\vor=200 b.ball=New ball b\x=700 b\y=300 b\richtung=0 b\rechts=32 b\links=30 b\vor=17 ;################################################# ;-->Hauptschleife<-------------------------------- While Not KeyDown(1) Steuerrung() Physik() Cls Rendern() Flip Wend ;------------------------------------------------- ;################################################# ;################################################# ;-->Functionen<----------------------------------- ;-->Steuerrung<-- Function Steuerrung() For b.ball=Each ball ;-->Vorwärts<-- If KeyDown(b\vor) If b\s#<5 b\s#=b\s#+0.05 EndIf EndIf ;-->Rechts<-- If KeyDown(b\rechts) b\richtung=b\richtung-1*b\s# If b\richtung<0:b\richtung=359:EndIf EndIf ;-->Links<-- If KeyDown(b\links) b\richtung=b\richtung+1*b\s# If b\richtung>359:b\richtung=0:EndIf EndIf Next End Function ;-->Physik<-- Function Physik() For b.ball=Each ball ;-->Bewegen<-- b\x#=b\x#+b\sx# b\y#=b\y#+b\sy# ;-->Speed-Berechnung<-- If Not KeyDown(b\vor) If b\s#>0:b\s#=b\s#-0.02:EndIf EndIf b\sx#=(Sin(b\richtung)*2)*b\s# b\sy#=(Cos(b\richtung)*2)*b\s# Next End Function ;-->Rendern<-- Function Rendern() For b.ball=Each ball ;-->Bälle zeichnen<-- Oval b\x#,b\y#,20,20 Next End Function ;------------------------------------------------- ;################################################# |
||
![]() |
regaaBetreff: Re: Realistischer Abprall |
![]() Antworten mit Zitat ![]() |
---|---|---|
egon hat Folgendes geschrieben: wenn sie sich berüren.
Das ist das Prob. Schreib erstmal ne Kollisionsroutine, und die darauffolgenden Aktionen. |
||
UltraMixer Professional 3 - Download
QB,HTML,CSS,JS,PHP,SQL,>>B2D,B3D,BP,BlitzMax,C,C++,Java,C#,VB6 , C#, VB.Net |
Timo |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Hey das Problem habe ich auch (gehabt... bis ichs sein gelassen hab ![]() Herauszufinden ob sie sich treffen ist nicht so schwer, aber wie sie dann wegfliegen sollen... das ist schwierig!! Code: [AUSKLAPPEN] d = Sqr( (x2-x1)^2 + (y2-y1)^2 ) ;distanz = Wurzel aus der Summe der Differenzquadrate der Positionen... ;---> satz des Pythagoras... aber wie die Bälle dann weiterfliegen sollen... KA ![]() |
||
![]() |
Egon Dragon |
![]() Antworten mit Zitat ![]() |
---|---|---|
Aber das muss doch möglich sein!!! ![]() |
||
![]() |
Bms |
![]() Antworten mit Zitat ![]() |
---|---|---|
einfach die bewegungsrichtungen vertauschen, etwa so(musst du noch verändern):
Code: [AUSKLAPPEN] x1=ball1x_geschwindigkeit y1=ball1y_geschwindigkeit x2=ball2x_geschwindigkeit y2=ball2y_geschwindigkeit ball1x_geschwindigkeit=2x ball1y_geschwindigkeit=2y ball2x_geschwindigkeit=1x ball2y_geschwindigkeit=1y |
||
Reblonce (Jump + Run + Shoot - Game; 20 Levels): Download |
Timo |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
nein, daran hab ich auch schon gedacht....
das währe zwar eine Art Abstoßung, sie wäre aber sehr primitiv!! Hier im Bild stehen die blauen Pfeile für die Richtung, die die Bälle nach diesem Prinzip hätten und dir roten Pfeile für die Richtung die sie eigentlich dannach haben müssten... Weiße Pfeile stehen für die Richtung vor der Kollision |
||
![]() |
sbrog |
![]() Antworten mit Zitat ![]() |
---|---|---|
schau mal heir
http://www.robsite.de/download...mathematik |
||
Timo |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
na bitte wer sagt's denn ![]() wusste garnicht das es über so etwas ein tutorial gibt... könnte man ja mal umschreiben für Blitzbasic |
||
![]() |
stfighter01 |
![]() Antworten mit Zitat ![]() |
---|---|---|
wenn du was über abprallverhalten von kugeln wissen willst, google mal unter "einfacher zentraler stoss"
mfg stfighter |
||
Denken hilft! |
Gerhard |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
...oder unter www.Blitzbase.de / Quellcode / Ballsimulation... | ||
![]() |
Egon Dragon |
![]() Antworten mit Zitat ![]() |
---|---|---|
Danke @ All | ||
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group