aboutsummaryrefslogtreecommitdiff
path: root/Ryujinx.Graphics.OpenGL/HwCapabilities.cs
diff options
context:
space:
mode:
authorA-w-x <80461138+A-w-x@users.noreply.github.com>2021-04-18 02:27:19 +0200
committerGitHub <noreply@github.com>2021-04-18 02:27:19 +0200
commit77199093978153d519d52264f9ef8b40b0592d0f (patch)
treefe3f36fb9190bb4fa02ce83dc311d7068fc51393 /Ryujinx.Graphics.OpenGL/HwCapabilities.cs
parentd23511c25c22fc47c54da28854034c5fbc143e33 (diff)
HwCapabilities: Divide Intel into IntelWindows and IntelUnix (#2219)
as suggested by gdkchan
Diffstat (limited to 'Ryujinx.Graphics.OpenGL/HwCapabilities.cs')
-rw-r--r--Ryujinx.Graphics.OpenGL/HwCapabilities.cs9
1 files changed, 6 insertions, 3 deletions
diff --git a/Ryujinx.Graphics.OpenGL/HwCapabilities.cs b/Ryujinx.Graphics.OpenGL/HwCapabilities.cs
index c297ef0e..6795b423 100644
--- a/Ryujinx.Graphics.OpenGL/HwCapabilities.cs
+++ b/Ryujinx.Graphics.OpenGL/HwCapabilities.cs
@@ -18,7 +18,8 @@ namespace Ryujinx.Graphics.OpenGL
{
Unknown,
Amd,
- Intel,
+ IntelWindows,
+ IntelUnix,
Nvidia
}
@@ -34,7 +35,7 @@ namespace Ryujinx.Graphics.OpenGL
public static bool SupportsViewportSwizzle => _supportsViewportSwizzle.Value;
public static bool SupportsSeamlessCubemapPerTexture => _supportsSeamlessCubemapPerTexture.Value;
public static bool SupportsNonConstantTextureOffset => _gpuVendor.Value == GpuVendor.Nvidia;
- public static bool RequiresSyncFlush => _gpuVendor.Value == GpuVendor.Amd || _gpuVendor.Value == GpuVendor.Intel;
+ public static bool RequiresSyncFlush => _gpuVendor.Value == GpuVendor.Amd || _gpuVendor.Value == GpuVendor.IntelWindows || _gpuVendor.Value == GpuVendor.IntelUnix;
public static int MaximumComputeSharedMemorySize => _maximumComputeSharedMemorySize.Value;
public static int StorageBufferOffsetAlignment => _storageBufferOffsetAlignment.Value;
@@ -71,7 +72,9 @@ namespace Ryujinx.Graphics.OpenGL
}
else if (vendor == "intel")
{
- return GpuVendor.Intel;
+ string renderer = GL.GetString(StringName.Renderer).ToLower();
+
+ return renderer.Contains("mesa") ? GpuVendor.IntelUnix : GpuVendor.IntelWindows;
}
else if (vendor == "ati technologies inc." || vendor == "advanced micro devices, inc.")
{