Einzelnen Beitrag anzeigen

DeerHunter

Registriert seit: 8. Jun 2004
16 Beiträge
 
Delphi 6 Professional
 
#1

Seltsames Verhalten von Application.OnIdle

  Alt 18. Okt 2004, 04:34
Hallo, ich arbeite gerade an einem kleinen Spielchen; für die Darstellung verwende ich Application.OnIdle, (mit Done := False), sodass permanent neu das Spielfeld gezeichnet wird.
Ich erreiche somit bei wohlbemerkt 100% CPU Auslastung eine Framerate, die stets bei ungefähr 100 FPS liegt.
Das seltsame dabei ist nun: wenn ich während der Laufzeit meines Spielchens die Auflösung ändere, dann erreiche ich plötzlich auch viel höhere Framerates von mehreren Hundert FPS. Wenn ich dann in der selben Auflösung das Spiel neu starte sind es aber wieder nur um die ~100.

Woran liegt das? gibt es da irgendwie ein internes Limit bei OnIdle..? und wenn ja, wieso wird das außer Kraft gesetzt bei Änderung der Auflösung? aber eigentlich kann das auch garnicht sein, da ich, wenn ich statt meinem normalen Spielfeld einfach nur ein Rechteck zeichne, trotzdem auf viel höhere FPS komme...
Kommt mir alles höchst seltsam vor, v.a. da ja die CPU Auslastung eigentlich immer 100% ist... wie kann er da plötzlich das doppelte an FPS erreichen?
  Mit Zitat antworten Zitat