![]() |
OpenGL Timebased Movement ohne VSync
Hallo,
Ich hab ein Programm das Timebased Movement unterstützt und das geht auch recht gut aber wenn ich an der Grafikkarte die VSync deaktiviere habe ich statt 65 etwa 3000 - 4000 Frames Delta Time ist somit extrem klein meist 0 und nur selten etwa 16. dadurch erhalte ich beim bewegen ein ruckeliges Bild. Ich möchte jedoch das der Nutzer nicht auf aktivierte VSync beschränkt ist. Daher möchte ich weder VSync einschalten, was vlt. auch nicht geht, noch die Sleep Funktion beim Rendern aufrufen um die Frames künstlich zu drosseln. Kennt da jemand noch eine andere Lösung ? Gruß robote202 |
AW: OpenGL Timebased Movement ohne VSync
Ohne den Code zu kennen: kannst du nicht einfach bei einem DeltaTime < ??? die Routine verlassen und nur bei überschreiten dieser Schwelle das Rendering veranlassen?
|
AW: OpenGL Timebased Movement ohne VSync
Ok ich werd's nachher mal versuchen
|
AW: OpenGL Timebased Movement ohne VSync
Wahrscheinlich nutzt du
Delphi-Quellcode:
für die Zeitermittlung? Versuch es stattdessen mal mit
GetTickCount
Delphi-Quellcode:
und Co. – dieser hat eine deutlich höhere Auflösung. Ich hatte damit noch nie solche Probleme...
QueryPerformanceCounter
|
AW: OpenGL Timebased Movement ohne VSync
Zitat:
Ich werde es mal mit Zitat:
@Uwe Raabe Das habe ich probiert aber hier erhielt ich auch nur komische Ergebnisse. Ich werde morgen mal den entsprechenden Code posten. Gruß roboter202 |
AW: OpenGL Timebased Movement ohne VSync
Hab's nochmal probiert jetzt geht es ich hab als Schwellwert zwar 0 definiert und erhalte (nur) 64 Frames aber das reicht ja.
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 22:14 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz