Hallo,
bei allen Spielen hört man etwas von fps, oder Frames per Second - Ich habe eien ungefähre Ahnung davon was genau das bedeutet, aber was ist es genau?
z.B.:
Wenn ich ein Spiel schreibe, habe ich ja eine Schleife, die alle sagen wir 100 ms durchläuft. Dort wird ja mein Fenster dann auch neugezeichnet - Wären das dann 10 fps?
Und wie funktioniert dann z.B. ein Jumb&Run Spiel mit einem Spielcharakter und Gegner?
Wenn der Spieler dann die Pfeiltasten benutzt um die Person zu steuern wird dann eine Variabel von 0 auf die Geschwindigkeit gesetzt und das aktualisieren wird der Schleife überlassen:
oder sollte man eine eigene Funktionen bauen, die unabhängig von der Schleife die Person bewegt?
Das wärs erstmal von mir 🙂
Wäre über Anregungen sehr dankbar!
Grüße
Michael
bei allen Spielen hört man etwas von fps, oder Frames per Second - Ich habe eien ungefähre Ahnung davon was genau das bedeutet, aber was ist es genau?
z.B.:
Wenn ich ein Spiel schreibe, habe ich ja eine Schleife, die alle sagen wir 100 ms durchläuft. Dort wird ja mein Fenster dann auch neugezeichnet - Wären das dann 10 fps?
Und wie funktioniert dann z.B. ein Jumb&Run Spiel mit einem Spielcharakter und Gegner?
Wenn der Spieler dann die Pfeiltasten benutzt um die Person zu steuern wird dann eine Variabel von 0 auf die Geschwindigkeit gesetzt und das aktualisieren wird der Schleife überlassen:
Code:
public void beiTastendruck() {
spielerGeschwindigkeit = 5; // Setze die Geschwindigkeit auf 5
}
public void beiLoslassen() {
spielerGeschwindigkeit = 0; // Beim Loslassen
}
public void run() {
while (true) {
spielerPos += spielerGeschwindigkeit;
// Hier wird halt gezeichnet
repaint();
sleep (100);
}
}
oder sollte man eine eigene Funktionen bauen, die unabhängig von der Schleife die Person bewegt?
Code:
public void beiTastendruck() {
spielerPos += 5;
// Zeichnen lassen...
repaint();
}
Das wärs erstmal von mir 🙂
Wäre über Anregungen sehr dankbar!
Grüße
Michael