Hallo Leute, ich wüsste gerne wie oder ob man das überhaupt lösen kann:
Immer wenn ich was programmiere, (besonders bei Spielen) laufen
die auf verschiedenen PCs unterschiedlich schnell,
die Zeitunterschiede sind zudem gewaltig (bei manchen bis zu 5 mal so schnell/langsam).
Ich denke mal das Problem liegt hier:
Anscheinend ist Thread.sleep() für das selbe Programm nicht auf jedem pc gleich lang.
Deshalb hab ich versucht mit einer Zeitmessung das selber zu machen:
Aber das hat auch nicht geklappt.
Jetzt weiß ich wirklich nicht wie ich das besser machen könnte,
ein Freund von mir hat gemeint dass man das garnicht umsetzen kann.
Bloß wie machen dass dann andere Spiele die (ungeähr) überall gleich schnell laufen?
Kann mir jemand helfen?
???:L
Immer wenn ich was programmiere, (besonders bei Spielen) laufen
die auf verschiedenen PCs unterschiedlich schnell,
die Zeitunterschiede sind zudem gewaltig (bei manchen bis zu 5 mal so schnell/langsam).
Ich denke mal das Problem liegt hier:
Java:
public void run ()
{
//Run-Methode
while(true)
{
try
{
//Pausenzeit
Thread.sleep (10);
}
catch (InterruptedException ex)
{
}
//Neuzeichnen
repaint();
}
}
Anscheinend ist Thread.sleep() für das selbe Programm nicht auf jedem pc gleich lang.
Deshalb hab ich versucht mit einer Zeitmessung das selber zu machen:
Java:
public void run ()
{
//Run-Methode
while(true)
{
double time= System.nanoTime()/10000000;
double time2=0;
int i=0;
//MultiplayerMethode
do
{
//Programmgeschwindigkeit
time2=System.nanoTime()/10000000;
i++;
}
while(time==time2);
multiplayer();
//Neuzeichnen
repaint();
}
}
Aber das hat auch nicht geklappt.
Jetzt weiß ich wirklich nicht wie ich das besser machen könnte,
ein Freund von mir hat gemeint dass man das garnicht umsetzen kann.
Bloß wie machen dass dann andere Spiele die (ungeähr) überall gleich schnell laufen?
Kann mir jemand helfen?
???:L