Rendern und berechnen Sie so schnell wie möglich, um die maximale Bildrate zu erreichen (die durch die vertikale Synchronisation begrenzt wird).
Verwenden Sie keinen Timer, sie sind nicht zuverlässig < 50-100 ms unter Windows. Prüfen Sie, wie viel Zeit vergangen ist. (Normalerweise benötigen Sie sowohl Delta t als auch einen absoluten Wert, je nachdem, ob Ihre Animation auf Physik oder Keyframe basiert).
Wenn Sie stabil sein wollen, können Sie auch eine obere/untere Grenze für Ihren Zeitschritt festlegen, um in Zeitlupe zu gehen, wenn ein Bild einige Sekunden zum Rendern braucht (Festplattenzugriff durch einen anderen Prozess?) oder eine Aktualisierung zu überspringen, wenn Sie zwei davon innerhalb von 10 ms erhalten.
Update (Da dies eine sehr beliebte Antwort ist)
Ich bevorzuge in der Regel einen festen Zeitschritt, da er alles stabiler macht. Die meisten Physik-Engines sind ziemlich robust gegenüber Zeitschwankungen, aber andere Dinge, wie Partikelsysteme oder verschiedene einfachere Animationen oder sogar Spiellogik, sind leichter abzustimmen, wenn man alles in einem festen Zeitschritt laufen lässt.
Aktualisierung2 (Da ich 10 Upvotes bekommen habe ;)
Um die Stabilität über lange Zeiträume (>4 Stunden) zu gewährleisten, sollten Sie sicherstellen, dass Sie keine Fließkommazahlen/Doppelzahlen zur Berechnung großer Zeitdifferenzen verwenden, da Sie dabei an Präzision verlieren und die Animationen/Physik Ihres Spiels darunter leiden werden. Verwenden Sie stattdessen Festkommazahlen (oder 64-Bit-Mikrosekunden-basierte) Ganzzahlen.
Für die haarigen Details empfehle ich die Lektüre Eine Frage der Präzision von Tom Forsyth.