Du bist nicht angemeldet.

Werbeanzeige

1

28.08.2004, 09:31

fTime ... FPS-unabhängig bewegen

Hi Leute,

hab folgendes Problem:
Nachdem ich mir jetzt einen neuen Rechner zugelegt habe musste ich mein Programm natürlich gleich darauf ausprobieren. Leider musste ich feststellen, dass wenn ich mich bewege die Bewegungen bei hohen FPS !!!! sehr langsam werden und bei niedrigen FPS schnell werden und das bei allen Bewegungen!

Quellcode

1
2
        m_fModelRot += g_pfButtons[TB_MOUSE_X_POS] * speedMouse * fTime;
        m_fModelRot -= g_pfButtons[TB_MOUSE_X_NEG] * speedMouse * fTime;


speedMouse ist der Geschwindigkeitsfaktor der Bewegung.

Bitte um Hilfe,
danke,
mfG
da_oAsch

2

30.08.2004, 03:42

Zitat

Leider musste ich feststellen, dass wenn ich mich bewege die Bewegungen bei hohen FPS !!!! sehr langsam werden und bei niedrigen FPS schnell werden und das bei allen Bewegungen!
Mooment...bei hohen FPS werden deine Bewegungen langsam und bei niedrigen FPS schneller?
Du meinst wohl genau umgekehrt ;)


Wie auch immer. Wenn es tatsächlich so sein sollte wie du es gesagt hast, würd ich mal prüfen wie du fTime oder sppedMouse berechnest.
Wichtig! Ich übernehme keinerlei Verantwortung für eventl. Datenverlust oder Schäden am Rechner ;D

Ghandi

Treue Seele

Beiträge: 218

Wohnort: Berlin

Beruf: Student

  • Private Nachricht senden

3

30.08.2004, 08:25

fTime sollte der Kehrwert der Fps sein, also 1/FPS.
Alles ist gut so wie es ist, am besten ist jedoch das niemand dies akzeptiert.

error C2039: 'DerSinn' : ist kein Element von 'CLeben'

4

30.08.2004, 12:58

@DragonMaster

Ist so: bei hohen FPS wird die Bewegung langsamer und bei niedrigen FPS wird die Bewegung schneller !!!! ???

Das ist es ja grad was mich so wundert !!!
speedMouse ist eine Konstante und fTime wird der MessageLoop 1:1 übergeben, da hab ich nix herumgemurkst!!!

Ich glaube mich überfällt der Wahnsinn das ist gegen jegliche Logik.... grml (und ich bin mir ganz sicher es ist dann wieder so ein blöder Fehler wie Tippfehler oder so ein sch....)

mfG
da_oAsch

5

30.08.2004, 18:07

Benutzt du die TriBase Engine? fTime sieht so danach aus. Aber wenn ich mich jetzt nicht irre misst fTime nicht die Zeit des letzten Frames sondern die gesamte Laufzeit des Programms.

Darum sagte ich schon, zeig mal wie du fTime berechnest. Sonst können wir nur raten.
Wichtig! Ich übernehme keinerlei Verantwortung für eventl. Datenverlust oder Schäden am Rechner ;D

Klaus

Treue Seele

Beiträge: 245

Wohnort: Stuttgart

Beruf: Schüler

  • Private Nachricht senden

6

31.08.2004, 10:31

Wodurch beeinflusst du denn die FPS?

Wenn du das durch die Auflösung machst, so könnte ich mir vorstellen, dass das daran liegt, dass du die mouseSpeed Konstante von der Bildschirm- (Backbuffer-) Auflösung *nicht* abhängig gemacht hast.
Versuch mal, die Backbuffermaße mit zu verrechnen.

cya
Klaus
Mozilla Firefox
The Browser - reloaded

Werbeanzeige