2016-10-19 4 views
0

In meinem Spiel habe ich Timer-Variablen für alles, was in meinem Spiel passiert, zum Beispiel Timer zum Zählen von Sekunden, bis ich einen Feind erstelle und ihn einsetzen und Timer für jeden Gegner zu schießen .. mein Punkt hier ist, dass ich viel benutze von Variablen des Typs long.Ich verwende eine Menge Variablen, um die Zeit in meinem Spiel zu zählen, ist es ok?

long timeToEnemyShoot = System.nanoTime(); 
while (true){ 
    update(); 
} 

public void update(){ 
if(System.nanoTime() - timeToEnemyShoot)/1000000 >= 1000){ 
    enemy.shoot(); 
} 

und stellen Sie sich vor, dass es mehr als 15 Variablen gibt! und ich denke, das ist kein guter Weg, Zeit zu verwalten. Gibt es einen anderen effizienten Weg?

+0

Sie brauchen, was Sie brauchen ...; o) Die bessere Frage ist: Sind sie an den richtigen Stellen? Aber wir müssen Ihren Code (oder zumindest ein Beispiel) sehen, um das zu sagen. –

+0

Fragen Sie sich, ob es möglich ist, das Ergebnis ohne die Daten zu erzielen, d. H. Mit Daten aus anderen Quellen. Wenn die Antwort nein ist, müssen Sie sie behalten. Die Zeitkomplexität beim Ableiten von Werten von anderen kann die Raumkomplexität des Speicherns überwiegen. –

+0

Ohne Code können wir Ihnen nicht sagen ob es ok ist oder nicht :) –

Antwort

0

Ich denke, es ist im Allgemeinen in Ordnung. Vielleicht verwenden Sie eine Art einer Meilenstein langen Variable und um die genaue Zeit anzugeben, verwenden Sie Meilenstein + weniger Speicherverbrauchsvariable. Risiken sind Komplexität => Bugs, höhere Rechenanforderungen.

0

Bei der Deklaration einer Variablen erfolgt memory allocation für die Variable.

Thing können Sie sicherstellen, um Sie eine Menge Schmerzen auf lange Sicht zu speichern ist, dass Variable private machen. In einigen Fällen beeinflussen Zugriffstypen die Leistung.

Ich hoffe, das hilft.

Verwandte Themen