Sprung simulation, wie am besten!?
Übersicht

Blitzkrieg BopBetreff: Sprung simulation, wie am besten!? |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
HI!
Wie kann man am besten eine Sprungsimulation erstellen? Beispiel: Der Sprung bei Blobby Volley. Wie kriegt man sowas am besten hin!? bitte mit beispiel, danke ![]() |
||
~ Hey Ho Let's Go ~ |
AvaGast |
![]() Antworten mit Zitat |
|
---|---|---|
Mit einer Sinuskurve oder durch künstliche Gravitation.
Ich bin aber gerade zu faul, um Beispiele zu posten... ![]() |
||
Roseman |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Hier mal ein Beispiel mit Sinus:
Code: [AUSKLAPPEN] Graphics 640,480,16,0 SetBuffer BackBuffer() Global maxhoehe=10 Repeat Cls hoehe#=Sin(a)*maxhoehe a=a+1 If a>360 Then a=0 Rect 100,100+hoehe#,10,10 Flip 1 Until KeyHit(1) |
||
![]() |
frigi |
![]() Antworten mit Zitat ![]() |
---|---|---|
und was mit "gravitation":
Code: [AUSKLAPPEN] sprungspeed#=7
x#=10 y#=300 Repeat Cls If KeyHit(200) Then sprung=1 If sprung=1 sprungspeed=sprungspeed-0.1 y=y-sprungspeed If sprungspeed<-7 Then sprungspeed=-7 If ImagesCollide(level,levelx,levely,0,spieler,x,y,0) sprung=0 sprungspeed=7 EndIf EndIf |
||
![]() |
Gossi |
![]() Antworten mit Zitat ![]() |
---|---|---|
Und wenn du es wirklich WIRKLICH realistisch machen willst, benutzt du die Formel s=(t/2)*v^2, wobei s die Höhe in Meter ist (du musst dir aussuchen, wie vielen Pixel das in deinem Spiel entsprechen), und wobei t die Zeit in Sekunden ist und wobei v die Geschwindigkeit ist, die du mit F=m*(v/t) ausrechnest, wobei dieses t die Beschleunigungsdauer ist (bei einem normalen Sprung etwa 0.5 Sekunden) und F die Absprungkraft in Newton ist und m die Masse (Gewicht) deiner Figur in kg ist. Die errechnete Geschwindigkeit v muss pro Sekunde um die negative Beschleunigung -9.81 m/s^2 abnehmen!
Kompliziert, aber realistischer gehts nicht mehr! ![]() ![]() |
||
Alle Wasser laufen ins Meer, doch wird das Meer nicht voller; an den Ort, dahin sie fließen, fließen sie immer wieder. (...) Was geschehen ist, eben das wird hernach sein. Was man getan hat, eben das tut man hernach wieder, und es geschieht nichts neues unter der Sonne. Geschieht etwas, von dem man sagen könnte: "Sieh, das ist neu"? Es ist längst vorher auch geschehen in den Zeiten, die vor uns gewesen sind. |
dubitat |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
@gossi und wenn sein spiel jetzt auf dem mond handelt muss die gravitation doch auch anders sein, sprich du musst da was mit gewichtskraft rechnen! ich mein man kann ja auch son level auf dem mond machen, wo die gravitation dann anders ist! | ||
Erare humanum est - Irren ist Menschlich |
Edlothiol |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Dann muss man statt -9,81 m einen anderen Wert hinschreiben, ich glaube -1,7 m? | ||
![]() |
Jan_Ehemaliger Admin |
![]() Antworten mit Zitat ![]() |
---|---|---|
so sähe das dann aus (Funzt nicht der Code!):
Code: [AUSKLAPPEN] Repeat
if collision = 0 then if Keyhit(Sprungtaste) or sprung = 1 sprung = 1 time=time+1 v = (Kraft*0.5)/Masse v = v - (9.81*time) Anziehung =(time/2)*v^2 endif else sprung = 0 time =0 endif Y = Y+ Pixel until keyhit(1) ja, aber ihr müsst bedenken, das dann die Kraft immer zum erdmittelpunkt zieht! Code: [AUSKLAPPEN] Repeat
if collision = 0 then if Keyhit(Sprungtaste) or sprung = 1 sprung = 1 time=time+1 v = (Kraft*0.5)/Masse v = v - (9.81*time/ entfernung_zum_Gravitationspunkt) Anziehung =(time/2)*v^2 endif else sprung = 0 time =0 endif X = X+ sin(Pixel) Y = Y + cos(Pixel) until keyhit(1) Euch steht natürlich frei, jetzt alle Fehler, die ich in den Formaln gemacht habe, zu berichtigen ![]() |
||
between angels and insects |
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group