Zeitgesteuertes Programmieren
Zeitgesteuertes Programmieren
Es gibt schon viele Threads zu diesem Thema,doch alle waren für mich nicht so ergiebig
Ich möchte, dass... sagen wir mal ein ball, die strecke von 500 pixeln in 5 sekunden schafft, und zwar auf jedem pc gleich schnell.
Damit meine ich nicht, dass man ja die framerate setzen kann, oder am ende der schleife wartet bis eine bestimtme zeit abgelaufen ist,
Ich will, das auch auf PC's die sehr langsam sind, das ganze nur 5 sekunden dauert, dann ruckelt der ball eben und spring pro frame eben 20 pixel anstatt auf einem guten PC nur einen.
Ich will also nicht umbedingt die Framerate gleich haben, sondern die bewegungen auf den PC abstimmen, und hoffe, das ich mich klar genug ausdrücken konnte.
Falls es genau sowas gibt, gehen auch links, aber ich seler habe noch nichts gutes gefunden
Ich möchte, dass... sagen wir mal ein ball, die strecke von 500 pixeln in 5 sekunden schafft, und zwar auf jedem pc gleich schnell.
Damit meine ich nicht, dass man ja die framerate setzen kann, oder am ende der schleife wartet bis eine bestimtme zeit abgelaufen ist,
Ich will, das auch auf PC's die sehr langsam sind, das ganze nur 5 sekunden dauert, dann ruckelt der ball eben und spring pro frame eben 20 pixel anstatt auf einem guten PC nur einen.
Ich will also nicht umbedingt die Framerate gleich haben, sondern die bewegungen auf den PC abstimmen, und hoffe, das ich mich klar genug ausdrücken konnte.
Falls es genau sowas gibt, gehen auch links, aber ich seler habe noch nichts gutes gefunden
in der Hauptschleife:
und dann einfach die Bewegungs-Geschwindigkeit deines Objekts mit frameTime.f multiplitizeren. Wenn dann die Frames/Sekunde wissen willst, brauchst du nur 1 / frameTime.f zu rechnen 
Code: Alles auswählen
oldTime = time
time = ElapsedMilliseconds()
frameTime.f = (time - oldTime) / 1000.0-
Hellhound66
- Beiträge: 476
- Registriert: 23.03.2005 23:19
Hierbei sei noch folgendes erwähnt:
- Ease-In und Easy-Out Glättung/Kritisch gedämpfte Feder: Algorithmen zur weichen Anpassung von Lags oder sonstigen Unregelmäßigkeiten.
Zum Beispiel oben:
Besser ist es noch, mit ms zu rechnen und zwar generell alles. Also Bewegungen in Pixel/Einheiten pro ms angeben, usw... Dann immer die Delta-Zeit errechnen und daraus die Bewegung.
- Ease-In und Easy-Out Glättung/Kritisch gedämpfte Feder: Algorithmen zur weichen Anpassung von Lags oder sonstigen Unregelmäßigkeiten.
Zum Beispiel oben:
Besser ist es noch, mit ms zu rechnen und zwar generell alles. Also Bewegungen in Pixel/Einheiten pro ms angeben, usw... Dann immer die Delta-Zeit errechnen und daraus die Bewegung.
Optimismus ist ein Mangel an Information.
- dllfreak2001
- Beiträge: 2925
- Registriert: 07.09.2004 23:44
- Wohnort: Bayern
Jo deswegen solltest Du eher überprüfen, ob die Strecke beider Sprites (jeweils PunktA und PunktB) sich schneidet, und nicht, ob die Sprites sich überlappen.

ZeHa hat bisher kein Danke erhalten.
Klicke hier, wenn Du wissen möchtest, woran ihm das vorbeigeht.
- dllfreak2001
- Beiträge: 2925
- Registriert: 07.09.2004 23:44
- Wohnort: Bayern