diff --git a/Ryujinx.Graphics.Gpu/GpuContext.cs b/Ryujinx.Graphics.Gpu/GpuContext.cs index 66077c3bf..67edd8427 100644 --- a/Ryujinx.Graphics.Gpu/GpuContext.cs +++ b/Ryujinx.Graphics.Gpu/GpuContext.cs @@ -82,27 +82,13 @@ namespace Ryujinx.Graphics.Gpu /// /// Host hardware capabilities. /// - internal ref Capabilities Capabilities - { - get - { - if (!_capsLoaded) - { - _caps = Renderer.GetCapabilities(); - _capsLoaded = true; - } - - return ref _caps; - } - } + internal Capabilities Capabilities { get; private set; } /// /// Event for signalling shader cache loading progress. /// public event Action ShaderCacheStateChanged; - private bool _capsLoaded; - private Capabilities _caps; private Thread _gpuThread; /// @@ -254,6 +240,8 @@ namespace Ryujinx.Graphics.Gpu public void SetGpuThread() { _gpuThread = Thread.CurrentThread; + + Capabilities = Renderer.GetCapabilities(); } /// diff --git a/Ryujinx.Headless.SDL2/WindowBase.cs b/Ryujinx.Headless.SDL2/WindowBase.cs index 74eb0d31a..c7c455962 100644 --- a/Ryujinx.Headless.SDL2/WindowBase.cs +++ b/Ryujinx.Headless.SDL2/WindowBase.cs @@ -164,6 +164,7 @@ namespace Ryujinx.Headless.SDL2 Device.Gpu.Renderer.RunLoop(() => { + Device.Gpu.SetGpuThread(); Device.Gpu.InitializeShaderCache(_gpuCancellationTokenSource.Token); Translator.IsReadyForTranslation.Set();