So ermitteln Sie die tatsächliche Bildschirmaktualisierungsrate (nicht die gerundete Zahl)

GemäßDieser Artikel von Microsoft Die vom Benutzer festgelegte Bildschirmaktualisierungsrate kann (und ist meistens) eine Bruchzahl. Der Benutzer stellt 59 Hz ein, aber der Bildschirm läuft gemäß der Bildschirmanzeige mit 60 Hz, aber in Wirklichkeit sind es 59,94 Hz. Was ich für eine extrem flüssige Animation brauche, ist der 59.94Hz.

VerwendenIDirect3DDevice9 :: GetDisplayMode Ich bekomme nur eineint Wert, der per Definition nicht das tatsächliche Timing darstellen kann (Gleiches gilt fürEnumDisplaySettings). Ungefähr jede Sekunde stoße ich auf ein sichtbares Ruckeln, weil es die abgerundete / abgeschnittene 59 meldet. Wenn ich das gemeldete Timing in meiner Anwendung manuell auf 59,94 korrigiere, läuft es reibungslos.

Weiß jemand, wie ich die tatsächliche Bildschirmaktualisierungsrate abrufen kann?

Meine derzeitige Problemumgehung besteht darin, 60 Hz und 59 Hz auf konstante 59,94 Hz abzubilden, aber das ist nicht zufriedenstellend.

Antworten auf die Frage(1)

Ihre Antwort auf die Frage