diff options
author | Alexander Orzechowski <alex@ozal.ski> | 2022-12-13 20:39:03 +0100 |
---|---|---|
committer | Alexander Orzechowski <alex@ozal.ski> | 2022-12-13 21:01:51 +0100 |
commit | 09e3029c1118616394e5e9c45dfcdd4adcdf86ad (patch) | |
tree | 652f0490e20ecd253171c43cc7a9271712793be5 /src/video_core/renderer_opengl/gl_device.cpp | |
parent | OpenGL: Check for threading support (diff) | |
download | yuzu-09e3029c1118616394e5e9c45dfcdd4adcdf86ad.tar yuzu-09e3029c1118616394e5e9c45dfcdd4adcdf86ad.tar.gz yuzu-09e3029c1118616394e5e9c45dfcdd4adcdf86ad.tar.bz2 yuzu-09e3029c1118616394e5e9c45dfcdd4adcdf86ad.tar.lz yuzu-09e3029c1118616394e5e9c45dfcdd4adcdf86ad.tar.xz yuzu-09e3029c1118616394e5e9c45dfcdd4adcdf86ad.tar.zst yuzu-09e3029c1118616394e5e9c45dfcdd4adcdf86ad.zip |
Diffstat (limited to 'src/video_core/renderer_opengl/gl_device.cpp')
-rw-r--r-- | src/video_core/renderer_opengl/gl_device.cpp | 8 |
1 files changed, 3 insertions, 5 deletions
diff --git a/src/video_core/renderer_opengl/gl_device.cpp b/src/video_core/renderer_opengl/gl_device.cpp index 4c5020def..cee5c3247 100644 --- a/src/video_core/renderer_opengl/gl_device.cpp +++ b/src/video_core/renderer_opengl/gl_device.cpp @@ -112,7 +112,7 @@ bool IsASTCSupported() { } } // Anonymous namespace -Device::Device() { +Device::Device(Core::Frontend::EmuWindow& emu_window) { if (!GLAD_GL_VERSION_4_6) { LOG_ERROR(Render_OpenGL, "OpenGL 4.6 is not available"); throw std::runtime_error{"Insufficient version"}; @@ -127,10 +127,8 @@ Device::Device() { #ifdef __unix__ constexpr bool is_linux = true; - const bool is_wayland = strcasecmp(getenv("XDG_SESSION_TYPE"), "wayland") == 0; #else constexpr bool is_linux = false; - constexpr bool is_wayland = false; #endif bool disable_fast_buffer_sub_data = false; @@ -195,12 +193,12 @@ Device::Device() { } } + strict_context_required = emu_window.StrictContextRequired(); // Blocks AMD and Intel OpenGL drivers on Windows from using asynchronous shader compilation. // Blocks EGL on Wayland from using asynchronous shader compilation. use_asynchronous_shaders = Settings::values.use_asynchronous_shaders.GetValue() && - !(is_amd || (is_intel && !is_linux)) && !is_wayland; + !(is_amd || (is_intel && !is_linux)) && !strict_context_required; use_driver_cache = is_nvidia; - strict_context_required = is_wayland; LOG_INFO(Render_OpenGL, "Renderer_VariableAOFFI: {}", has_variable_aoffi); LOG_INFO(Render_OpenGL, "Renderer_ComponentIndexingBug: {}", has_component_indexing_bug); |