@DarkMo, ich sehe wir stimmen im Prinzip überein, drücken uns nur unterschiedlich aus.
Was mich aber immer noch interessiert:
Gibt es einen Zusammenhang zwischen "hoher FPS" und "langem Ruckler". Warum, weshalb und wie auch immer...
Wenn ich keinen Post mit FPS-Angaben übersehen habe, haben wir hier mit 40-50 der eben solchen einen Spitzenreiten...
Zum Thema CPU Belastung und GPU, es gibt einen Grund für Mantel, Vulkan, DirectX12 usw., einfach gesagt, waren alle bisherigen Konzepte zur GPU hin, single-threaded.
Umso höher die FPS, umso flüssiger ist der Haupt-Thread.
Zur veranschaulichen rede ich mal in Ticks, eine feste Zeiteinheit und Haupt und Nebenthread, der für die Wegberechnung.
Ein Spiel Monat braucht 120 Ticks. Eine Nebenthread für den Monat 130 Ticks. Es fehlen 10 Ticks, also ist die Warte Zeit länger.
Im Fast Modus brauch der Monat nur noch 90Ticks, nun fehlen uns schon 40 Ticks.
So wenn jetzt der Monat gebremst wird. Sagen wir die GPU Leistung für den Hauptthread ist der limitierende Faktor:
Der Hauptthread braucht nun 150 Ticks für einen Monat, am Monatsende haben wir kein Problem, der Nebenthread ist fertig. (Kann man mit ProcessExplorer sehen).
Andere Probleme:
CPU Ram Anbindung für die Datenmenge zu schwach.
Beispiel:
Nebenthread hat nur 90 Ticks gebraucht,
120 Ticks Monat ist Fertig.
Nun kommt der Threadjoin, wir brauchen aber um die Daten zusammenzuführen 5Ticks, das Spiel bleibt trotzdem stehen!
Mikroruckler:
Der Hauptthread beschäftigt sich mit Passagieren beim Rendern oder für die Kollisionsabfrage für Passagiere.
Hoffe das Hilft bei verstehen der Komplexität.