aboutsummaryrefslogtreecommitdiff
path: root/Ryujinx.Graphics.Vulkan/HardwareCapabilities.cs
diff options
context:
space:
mode:
Diffstat (limited to 'Ryujinx.Graphics.Vulkan/HardwareCapabilities.cs')
-rw-r--r--Ryujinx.Graphics.Vulkan/HardwareCapabilities.cs18
1 files changed, 17 insertions, 1 deletions
diff --git a/Ryujinx.Graphics.Vulkan/HardwareCapabilities.cs b/Ryujinx.Graphics.Vulkan/HardwareCapabilities.cs
index 31acfc9b..0a4d365f 100644
--- a/Ryujinx.Graphics.Vulkan/HardwareCapabilities.cs
+++ b/Ryujinx.Graphics.Vulkan/HardwareCapabilities.cs
@@ -1,7 +1,20 @@
using Silk.NET.Vulkan;
+using System;
namespace Ryujinx.Graphics.Vulkan
{
+ [Flags]
+ enum PortabilitySubsetFlags
+ {
+ None = 0,
+
+ VertexBufferAlignment4B = 1,
+ NoTriangleFans = 1 << 1,
+ NoPointMode = 1 << 2,
+ No3DImageView = 1 << 3,
+ NoLodBias = 1 << 4
+ }
+
readonly struct HardwareCapabilities
{
public readonly bool SupportsIndexTypeUint8;
@@ -23,6 +36,7 @@ namespace Ryujinx.Graphics.Vulkan
public readonly uint MaxSubgroupSize;
public readonly ShaderStageFlags RequiredSubgroupSizeStages;
public readonly SampleCountFlags SupportedSampleCounts;
+ public readonly PortabilitySubsetFlags PortabilitySubset;
public HardwareCapabilities(
bool supportsIndexTypeUint8,
@@ -43,7 +57,8 @@ namespace Ryujinx.Graphics.Vulkan
uint minSubgroupSize,
uint maxSubgroupSize,
ShaderStageFlags requiredSubgroupSizeStages,
- SampleCountFlags supportedSampleCounts)
+ SampleCountFlags supportedSampleCounts,
+ PortabilitySubsetFlags portabilitySubset)
{
SupportsIndexTypeUint8 = supportsIndexTypeUint8;
SupportsCustomBorderColor = supportsCustomBorderColor;
@@ -64,6 +79,7 @@ namespace Ryujinx.Graphics.Vulkan
MaxSubgroupSize = maxSubgroupSize;
RequiredSubgroupSizeStages = requiredSubgroupSizeStages;
SupportedSampleCounts = supportedSampleCounts;
+ PortabilitySubset = portabilitySubset;
}
}
}