Hallo Leute,
ich habe folgendes Problem und komm nicht wirklich weiter. Ich hab ein kleines Spiel mit SFML programmiert. Klappt auch alles ganz gut, nur ist die Framerate nicht begrenzt und die CPU-Auslastung geht damit auf 100% hoch. Ich wollte die Framerate jetzt mit
|
C-/C++-Quelltext
|
1
|
App.SetFramerateLimit(60);
|
limitieren.
Das ist aber ziemlich ungünstig für meine Kollisionserkennung. Der Ball bewegt sich mit 750 Pixeln pro Sekunde, macht also bei limitierter Framerate 12.5 Pixel pro Durchlauf. Dafür müsste ich meine komplette Kollsionserkennung umstellen.
Also habe ich mir gedacht, ich limitiere die Framerate z.B. auf 600 Frames/Sekunde (das Programm hat keine großen Berechnungen, schafft bei mir im Moment 5000) aber zeichne nur 60 mal pro Sekunde. Leider führt das immer noch zu Rucklern und ist auch nicht gerade die sauberste Lösung.
Habt ihr vielleicht Anregungen für mich wie ich es schaffe das Programm etwas auszubremsen, ohne dass die Kollisionserkennung dran glauben muss?