M23: Frames per Second

Hallo Leute,
ich bräuchte eure Meinung zu einem Thema... Es geht um frames per second.
Ich mache das so:

-Die Gameloop wird alle 50 millisekunden aufgerufen.
Dadurch habe ich 20 Zeichnungen pro Sekunde in meinem Canvas.

-Am Anfang der gameloop merke ich die aktuellen Millisekunden seit 1970
-Am Ende, wenn alles gezeichnet wurde, errechne ich eine Differenz. Also
so: Die aktuellen Millisekunden - die gespeicherten Millisekunden
-Dadurch weiss ich wie lange die zeichnungen gebraucht haben
-Da ich ja jetzt die Differenz habe, kann ich auch die theoretische FPS
errechnen. Ich habe zwar 20 fps gesetzt aber es wäre z.B. auch 500 möglich,
oder je nachdem, was mein Browser ausrechnet.

Ich wollte mal Meinungen dazu hören. Ist das auch Praxis so in der Spieleentwicklung Welt?

Danke im voraus.

  1. Hi,

    Ich wollte mal Meinungen dazu hören. Ist das auch Praxis so in der Spieleentwicklung Welt?

    Ich muss zugeben, ich verstehe nicht, was dein Vorhaben und deine Frage ist.

    Aber bei "Spiele", "Javascript" und "setTimeout" möchte ich mal requestAnimationFrame in den Raum werfen.

    ~dave

    1. Es geht nur darum, ob meine Vorgehensweise korrekt und zuverlässig ist, was fps angeht. ^^

      1. zeit speichern
      2. alles rendern
      3. neue zeit - gespeicherte zeit = differenz
      4. 1000 / differenz = mögliche fps die sekunde

      setInterval sage ich ja nur führe alle 50ms Funktion bla() aus.

      1. Hi,

        theoretisch sollte das hinkommen.
        In der paxis dauert aber normal nicht jeder Zeichenvorgang gleich lang.

        Normal werden FPS auch schlicht gezählt. Nimm nicht .setInterval sondern wie angesprochen .requestAnimationFrame und zähl mit wie oft es innerhalb einer sekunde ausgeführt wird.

        ~dave