mirror of
https://github.com/moonlight-stream/moonlight-qt.git
synced 2025-07-01 23:35:55 +00:00
Always use a non-threaded renderer
This ensures we can block Qt's rendering as needed to synchronize with SDL
This commit is contained in:
parent
75b19a60c1
commit
90f7d35150
17
app/main.cpp
17
app/main.cpp
@ -350,14 +350,15 @@ int main(int argc, char *argv[])
|
|||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#if defined(Q_OS_DARWIN) && QT_VERSION >= QT_VERSION_CHECK(6, 0, 0)
|
#ifndef Q_OS_WIN32
|
||||||
if (!qEnvironmentVariableIsSet("QSG_RHI_BACKEND")) {
|
// Moonlight requires the non-threaded renderer because we depend
|
||||||
// The Metal backend in Qt 6.0.0 causes really strange issues transitioning to
|
// on being able to control the render thread by blocking in the
|
||||||
// full-screen in our SDL window (hangs in SDL's Cocoa_SetWindowFullscreenSpace())
|
// main thread (and pumping events from the main thread when needed).
|
||||||
// and breaks drawing our status updates in the StreamSegue, so use OpenGL like
|
// That doesn't work with the threaded renderer which causes all
|
||||||
// Qt 5 does until we figure out the cause of these issues.
|
// sorts of odd behavior depending on the platform.
|
||||||
qputenv("QSG_RHI_BACKEND", "opengl");
|
//
|
||||||
}
|
// NB: Windows uses the special "windows" render loop.
|
||||||
|
qputenv("QSG_RENDER_LOOP", "basic");
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
// We don't want system proxies to apply to us
|
// We don't want system proxies to apply to us
|
||||||
|
Loading…
x
Reference in New Issue
Block a user