Als «game-loop» getaggte Fragen

Die zentrale Codeschleife, die für das laufende Gameplay verantwortlich ist. Im einfachsten Zustand akzeptiert es Eingaben, löst die Aktionen von Entitäten auf und rendert die Szene.

11
Wann sollte ich einen festen oder variablen Zeitschritt verwenden?
Sollte eine Spieleschleife auf festen oder variablen Zeitschritten basieren? Ist man immer überlegen oder variiert die richtige Wahl je nach Spiel? Variabler Zeitschritt Physik-Aktualisierungen werden als Argument "Seit der letzten Aktualisierung verstrichene Zeit" übergeben und sind daher von der Framerate abhängig. Dies kann bedeuten, Berechnungen durchzuführen als position += distancePerSecond …

3
Wie soll ich eine Hauptspielschleife schreiben? [geschlossen]
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 …

5
Was ist der Sinn des updateunabhängigen Renderns in einer Spieleschleife?
Es gibt Dutzende von Artikeln, Büchern und Diskussionen in Spieleschleifen. Allerdings stoße ich ziemlich oft auf Folgendes: while(running) { processInput(); while(isTimeForUpdate) { update(); } render(); } Was mich an diesem Ansatz grundsätzlich stört, ist das "update-unabhängige" Rendern, z. B. das Rendern eines Frames, wenn sich überhaupt nichts ändert. Meine Frage …

5
Sollen die Akteure eines Spiels selbst für das Zeichnen verantwortlich sein?
Ich bin sehr neu in der Spieleentwicklung, aber nicht in der Programmierung. Ich spiele (wieder) mit einem Pong-Spiel, das JavaScript- canvasElemente verwendet. Ich habe ein PaddleObjekt mit folgenden Eigenschaften erstellt ... width height x y colour Ich habe auch ein PongObjekt, das Eigenschaften wie hat ... width height backgroundColour draw(). …


3
Was ist die Standard-C # / Windows Forms-Spieleschleife?
Wie sollte die Hauptspielschleife strukturiert sein, wenn Sie ein Spiel in C # schreiben, das normale Windows Forms und einige Grafik-API-Wrapper wie SlimDX oder OpenTK verwendet? Eine kanonische Windows Forms-Anwendung verfügt über einen Einstiegspunkt, der aussieht public static void Main () { Application.Run(new MainForm()); } und während man durch Verknüpfen …



4
Was ist der Sinn von "Delta" in diesem Code? Entspricht es einem Standard bei Spielentwicklern?
Ich weiß sehr wenig über Spieleprogrammierung, würde aber gerne mehr erfahren. Ich versuche den Code für dieses Spiel zu verstehen . Ich versuche zu verstehen, warum der Code ein "Delta" an Shipcontrols.js übergibt, das die Richtung des Schiffes basierend auf Benutzereingaben ändert. Grundsätzlich berechnet das Spiel "Delta" jede Schleife ... …


1
Verhaltensbäume :: Aktionen, die länger als einen Tick dauern
Nach meinem Verständnis für Verhaltensbäume sollte jedes Verhalten eine kurze, zielorientierte Aktion sein, die in wenigen Iterationen ausgeführt werden kann. So ist zum Beispiel unten ein Bild eines Verhaltensbaums: Nehmen wir nun an, dass das Verhalten von Drive To Enemy mehr als ein paar Iterationen in der Struktur erfordert. Bei …
19 ai  game-loop  behavior 


3
Design eines rundenbasierten Spiels, in dem Aktionen Nebenwirkungen haben
Ich schreibe eine Computerversion des Spiels Dominion . Es ist ein rundenbasiertes Kartenspiel, bei dem Aktionskarten, Schatzkarten und Siegpunktkarten im persönlichen Deck eines Spielers gesammelt werden. Ich habe die Klassenstruktur ziemlich gut entwickelt und beginne, die Spiellogik zu entwerfen. Ich verwende Python und kann später eine einfache Benutzeroberfläche mit Pygame …

2
Wo soll die Kollisionserkennungslogik platziert werden?
Ich entwickle eine kleine 2D-Game-Engine. Die Zeichen haben eine Malmethode, die derzeit Folgendes ausführt: Berechnen Sie die neue Position des Charakters anhand seiner Geschwindigkeit usw. Aktualisieren der Kollisionsgitterzelle ** Zeichne den Charakter an der neuen Position ** Ich habe ein Kollisionsraster erstellt, um die Anzahl der Kreuzungsprüfungen zu verringern Nun …


Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.