AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Multimedia Delphi "Gorillas" programmieren
Thema durchsuchen
Ansicht
Themen-Optionen

"Gorillas" programmieren

Ein Thema von Matze · begonnen am 18. Jul 2003 · letzter Beitrag vom 30. Nov 2006
 
Cöster

Registriert seit: 6. Jun 2006
589 Beiträge
 
Turbo Delphi für Win32
 
#14

Re: "Gorillas" programmieren

  Alt 17. Okt 2006, 15:03
Zitat von Rotojoto:
Zitat von Cöster:
Die einzige physikalilsche Formel, die man braucht ist s=v*t - a*t²/2

in y-Richtung ist a die Erdbeschleunigung, also 9,81
in x-Richtung ist a die Windstärke.
s ist jeweils die zurückgelegte Strecke in die entsprechende Richtung (x oder y), v ist die Startgeschwindigkeit in x- bzw. y-Richtung und t ist die vergangene Zeit seit Abwurf der Banane.
[/delphi]
Also ansich versteh ich nich ganz wie du auf die Formel kommst...
das is doch ein schräger wurf und keine gleichförmige bewegung.
da haben wir, laut tafelwerk, ein formel für x und y richtung..
und dann noch eine für die geschwindigkeit, wobei wenn der wind mitberechnet wird, er entweder von der angegebenen geschwindigkeit dazuaddiert wird oder abgezogen wird.
also in y-Richtung ist klar oder? s=v*t - g*t²/2
v*t ist die Strecke die zurückgelegt würde, wenn es keine Anziehungskraft gäbe. v ist die Startgeschwindigkeit in y-Richtung. g*t²/2 ist die Strecke, die durch die Erdanziehung nach unten zurückgelegt wird. Diese beiden Strecken müssen voneinander abgezogen werden, und man erhält somit, wenn man noch einrechnet, von wo die Banane abgeworfen wurde, die Y-Koordinate, nach der Zeit t.

Für x ist es eigentlich nichts anderes: Statt der Erdanziehung wirkt hier der Wind. Die Strecke ohne Wind wäre wieder v*t, wobei v jetzt x-Startgeschwindigkeit ist. Man kann sagen, dass die x-Geschwindigkeit durch den Wind konstant beschleunigt bzw. gebremst wird. a ist jetzt die Beschleunigung in x-Richtung. a*t²/2 muss man von v*t abziehen und man kriegt raus, wie weit sich die Banane rechts bzw. links nach der Zeit t vom Abwurfpunkt befindet.

Die Geschwindigkeiten musst du eigentlich gar nicht berechnen. Es interessiert ja nur, wo sich die Banane jetzt befindet.

Zitat von Rotojoto:
und wie mach ich das mit der zeit? muss ich die durch nen timer mitlaufen lassen, der die ganze zeit mitzählt oder muss der bei jedem spieler wieder neu resettet werden?
Ein Timer wäre schonmal nicht schlecht. Ich würde, sobald die Banane abgeworfen wird, GetTickCount unter einer Variablen (Start) speichern und den Timer (Schleife ginge auch) starten. Bei jedem Timeraufruf wird t durch GetTickCount - Start berechnet und an eine Funktion übergeben, die dir dann die aktuellen Bananenkoordinaten zurückgibt. Dort kannst du die Banane dann zeichnen.
  Mit Zitat antworten Zitat
 


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 17:01 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz