ähm fps.....

M

Malefizbua

wie kann ich die momentanen frames per seconds auslesen?
also ein progg, dass sagen wir mal alle 100ms die frames ausliest und
sie dann in einer box ausgibt.....
 

Daniel Toplak

Erfahrenes Mitglied
Um die FPS zu berechnen, brauchst du in deinem Programm eine Hauptschleife, was obligatorisch bei Spielen ist.
Aufbau der Hauptschleife:

Code:
Do
    ' miss die Zeit am Anfang der Schleife
    .Zeitanfang = jetzt
    .
    .
    'reagiere auf Benutzereingaben (Tasten, Maus)
    .
    .
    .
    'Zeichen einen Frame entsprechend der Eingaben usw.
    .
    .
    .
    ' miss die Zeit am Ende der Schleife
    Zeitende = jetzt
    'Hier kannst du z.B. noch eine Framebremse einbauen ( wenn es dein Programm
    'erfordert) um dein Programm in etwa Konstant auf 30FPS zu halten und nicht schneller
    Do While (Zeitende - Zeitanfang) < 33.33
        Zeitende = jetzt
        'einfach eine leere Schleife, die immer wieder die endZeit misst
    Loop
    'Nun kannst du die Zeitdifferenz vom Start bis zum Ende der
    'Schleife berechen und das ergibt die Zeit, die deine Schleife
    'für einen Frame braucht (z.B. in Millisekunden z.B. Differenz = 20 ms)
    .
    ' Jetzt rechnest du das auf 1 Sekunde auf (=1000ms)
    '1000/differenz = FPS !!!!
    'z.B. 1000/20=50 FPS
Loop Until ende = True

So ungefähr schaut das dann aus

Gruss Homer