簡體   English   中英

如何在運行時動態切換 Qt 應用程序中的 VSync?

[英]How to dynamically toggle VSync in a Qt application at runtime?

Qt5 允許使用QSurfaceFormat::setSwapInterval讓應用程序決定是否啟用垂直同步。 然而,這只能在應用程序啟動時完成,例如要禁用 VSync,在創建應用程序 object 之前調用以下命令就足夠了:

QSurfaceFormat format;
format.setSwapInterval(0);
QSurfaceFormat::setDefaultFormat(format);

上面的代碼將通過在 Qt 場景圖形使用的 Opengl 上下文中將交換間隔設置為零來禁用 Qt 快速應用程序中的垂直同步。 但是,我想要的是可以在運行時在需要時禁用和啟用 VSync(不僅僅是在 QML 引擎啟動之前),如下所示:

void toggleVSync(){...}

環顧四周,我並沒有真正找到任何東西,所以我想知道是否有辦法實現這一目標。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM