Wie soll ich eine Hauptspielschleife schreiben? Was sind einige Dinge, die Sie in der Spieleschleife tun sollten, und was sind einige Dinge, die Sie in der Spieleschleife nicht tun sollten?
Ich habe viele von ihnen geschrieben, aber nie wirklich über Spielschleifen nachgelesen. Ich bin sicher, dass ich sie erheblich verbessern könnte, aber ich bin mir nicht sicher, wie.
architecture
game-loop
hokiecsgrad
quelle
quelle
Antworten:
Die Hauptspielschleife erledigt drei Hauptaufgaben:
In einer einfachen Spieleschleife werden diese drei Aufgaben zu einer while-Schleife zusammengefasst. Dies hat einige unerwünschte Ergebnisse:
Fortgeschrittene Spielschleifen lösen die oben aufgeführten Probleme. Hier sind einige nützliche Artikel:
Schauen Sie sich das Allegro-Skater-Demospiel an, um ein exzellentes Beispiel für eine Spielrunde zu erhalten:
Game-Loops erledigen für die meisten Spiele oft die gleiche Arbeit, daher habe ich mir überlegt, wie man ein verallgemeinertes Game-Framework erstellen kann. Es ist besser, eine Implementierung einer Spieleschleife zu schreiben und zwischen den Spielen zu teilen. Es spart Arbeit beim Erstellen eines neuen Spiels und Verbesserungen an der freigegebenen Spieleschleife können von allen Spielen gemeinsam genutzt werden (z. B. Hinzufügen eines FPS-Zählers oder einer Bildschirmaufnahmefunktion).
quelle
Ich würde Glenn Fiedlers Artikel über die Unabhängigkeit von robusten Frameraten empfehlen: " Fix Your Timestep! "
(Weniger relevant für das jeweilige Thema, aber die anderen Artikel in der Reihe sind auch ziemlich gut - genau wie alles auf seiner Seite!)
quelle
Wenn Sie an Game-Loops arbeiten möchten, empfehle ich Ihnen, diesen alten Artikel über Gamasutra über Multithread-Game-Engine-Architekturen zu lesen. Es gibt verschiedene Möglichkeiten, um eine Spieleschleife zu erstellen.
http://www.gamasutra.com/view/feature/1830/multithreaded_game_engine_.php
quelle