From 9f12e50a546b15533778ed0d8290202af91c10a2 Mon Sep 17 00:00:00 2001 From: gdkchan Date: Tue, 25 Apr 2023 19:51:07 -0300 Subject: Refactor attribute handling on the shader generator (#4565) * Refactor attribute handling on the shader generator * Implement gl_ViewportMask[] * Add back the Intel FrontFacing bug workaround * Fix GLSL transform feedback outputs mistmatch with fragment stage * Shader cache version bump * Fix geometry shader recognition * PR feedback * Delete GetOperandDef and GetOperandUse * Remove replacements that are no longer needed on GLSL compilation on Vulkan * Fix incorrect load for per-patch outputs * Fix build --- Ryujinx.Graphics.GAL/Capabilities.cs | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) (limited to 'Ryujinx.Graphics.GAL/Capabilities.cs') diff --git a/Ryujinx.Graphics.GAL/Capabilities.cs b/Ryujinx.Graphics.GAL/Capabilities.cs index bc4a02c9..a93d3846 100644 --- a/Ryujinx.Graphics.GAL/Capabilities.cs +++ b/Ryujinx.Graphics.GAL/Capabilities.cs @@ -35,7 +35,8 @@ namespace Ryujinx.Graphics.GAL public readonly bool SupportsNonConstantTextureOffset; public readonly bool SupportsShaderBallot; public readonly bool SupportsTextureShadowLod; - public readonly bool SupportsViewportIndex; + public readonly bool SupportsViewportIndexVertexTessellation; + public readonly bool SupportsViewportMask; public readonly bool SupportsViewportSwizzle; public readonly bool SupportsIndirectParameters; @@ -80,7 +81,8 @@ namespace Ryujinx.Graphics.GAL bool supportsNonConstantTextureOffset, bool supportsShaderBallot, bool supportsTextureShadowLod, - bool supportsViewportIndex, + bool supportsViewportIndexVertexTessellation, + bool supportsViewportMask, bool supportsViewportSwizzle, bool supportsIndirectParameters, uint maximumUniformBuffersPerStage, @@ -121,7 +123,8 @@ namespace Ryujinx.Graphics.GAL SupportsNonConstantTextureOffset = supportsNonConstantTextureOffset; SupportsShaderBallot = supportsShaderBallot; SupportsTextureShadowLod = supportsTextureShadowLod; - SupportsViewportIndex = supportsViewportIndex; + SupportsViewportIndexVertexTessellation = supportsViewportIndexVertexTessellation; + SupportsViewportMask = supportsViewportMask; SupportsViewportSwizzle = supportsViewportSwizzle; SupportsIndirectParameters = supportsIndirectParameters; MaximumUniformBuffersPerStage = maximumUniformBuffersPerStage; -- cgit v1.2.3