From 05cb10530fbd34635b06f75dea488a8896a763ac Mon Sep 17 00:00:00 2001 From: bunnei Date: Fri, 29 Jun 2018 14:10:16 -0400 Subject: OpenGL: Use MakeCurrent/DoneCurrent for multithreaded rendering. --- src/yuzu/main.cpp | 3 +++ 1 file changed, 3 insertions(+) (limited to 'src/yuzu/main.cpp') diff --git a/src/yuzu/main.cpp b/src/yuzu/main.cpp index 9ce8d7c27..16812e077 100644 --- a/src/yuzu/main.cpp +++ b/src/yuzu/main.cpp @@ -374,6 +374,8 @@ bool GMainWindow::LoadROM(const QString& filename) { const Core::System::ResultStatus result{system.Load(render_window, filename.toStdString())}; + render_window->DoneCurrent(); + if (result != Core::System::ResultStatus::Success) { switch (result) { case Core::System::ResultStatus::ErrorGetLoader: @@ -916,6 +918,7 @@ int main(int argc, char* argv[]) { QCoreApplication::setApplicationName("yuzu"); QApplication::setAttribute(Qt::AA_X11InitThreads); + QApplication::setAttribute(Qt::AA_DontCheckOpenGLContextThreadAffinity); QApplication app(argc, argv); // Qt changes the locale and causes issues in float conversion using std::to_string() when -- cgit v1.2.3