2010-08-19 5 views

Antwort

4

Dies wird normalerweise durch die Kombination einer "Spielschleife" (http://gamedesign.wikicomplete.info/game-loop) gesteuert, in der der Code umläuft und Frames mit einem zeitgesteuerten Intervall zeichnet. Wenn Sie verschiedene Geräte verwenden, dauert das Zeichnen von Bildern länger. Daher wird dies normalerweise dadurch gehandhabt, dass Sie entweder die "Detailgenauigkeit" (LOD) dynamisch anpassen und/oder "Frame-Überspringen" verwenden, wodurch Sie nicht für jede Schleife einen Rahmen zeichnen. In der Tat gibt es eine andere Frage, die einen grundlegenden Algorithmus für diese Demos:

Allegro 5 game: game loop that runs at constant speed?

-Oisin

+0

sehr interessant danke! – Jorgesys

+0

Wikicomplete ist Zeit für mich. Hier ist ein [guter Artikel über Spiel-Loops] (http://www.koonsolo.com/news/dewitters-gameloop/). – idbrii

1

schneller laufen zu lassen ist in der Regel eine gute Sache! Der beste Weg, um sicherzustellen, dass das Spiel auf jedem Gerät korrekt ausgeführt wird, besteht darin, die Updates auf die seit dem letzten Update vergangene Zeit zu stützen. Dies hält das Spielgefühl konstant, wenn es auf einem schnelleren Gerät läuft.

Sonst könnten Sie einen Schlafanruf auf dem schnelleren Gerät hinzufügen - aber warum nicht glatter laufen, wenn Sie können.

+1

Weil Sie den Akku schneller verbrauchen und unnötigerweise andere Prozesse davon abhalten, die CPU zu benutzen, die der Benutzer vielleicht weitermachen möchte? Scheint mir, dass, wenn Sie die CPU hog, es eine Option geben sollte, "nett" zu sein. – LarsH

Verwandte Themen