aboutsummaryrefslogtreecommitdiff
path: root/Ryujinx.Graphics/Gal/GalPipelineState.cs
diff options
context:
space:
mode:
authorgdkchan <gab.dark.100@gmail.com>2018-10-17 18:02:23 -0300
committerGitHub <noreply@github.com>2018-10-17 18:02:23 -0300
commit0e1e094b7a8f0134831fc4cebdb0841b9c10fe6a (patch)
tree81ba6446851a033f27adeafbfb94751032108047 /Ryujinx.Graphics/Gal/GalPipelineState.cs
parent02a8e7fc9369d7882db08a69d108beefb0f98677 (diff)
Improve texture tables (#457)
* Improve texture tables * More renaming and other tweaks * Minor tweaks
Diffstat (limited to 'Ryujinx.Graphics/Gal/GalPipelineState.cs')
-rw-r--r--Ryujinx.Graphics/Gal/GalPipelineState.cs29
1 files changed, 24 insertions, 5 deletions
diff --git a/Ryujinx.Graphics/Gal/GalPipelineState.cs b/Ryujinx.Graphics/Gal/GalPipelineState.cs
index 1bfe2684..56b0fbde 100644
--- a/Ryujinx.Graphics/Gal/GalPipelineState.cs
+++ b/Ryujinx.Graphics/Gal/GalPipelineState.cs
@@ -1,9 +1,28 @@
namespace Ryujinx.Graphics.Gal
{
+ public struct ColorMaskRgba
+ {
+ private static readonly ColorMaskRgba _Default = new ColorMaskRgba()
+ {
+ Red = true,
+ Green = true,
+ Blue = true,
+ Alpha = true
+ };
+
+ public static ColorMaskRgba Default => _Default;
+
+ public bool Red;
+ public bool Green;
+ public bool Blue;
+ public bool Alpha;
+ }
+
public class GalPipelineState
{
- public const int Stages = 5;
+ public const int Stages = 5;
public const int ConstBuffersPerStage = 18;
+ public const int RenderTargetsCount = 8;
public long[][] ConstBufferKeys;
@@ -53,10 +72,8 @@
public GalBlendFactor BlendFuncSrcAlpha;
public GalBlendFactor BlendFuncDstAlpha;
- public bool ColorMaskR;
- public bool ColorMaskG;
- public bool ColorMaskB;
- public bool ColorMaskA;
+ public ColorMaskRgba ColorMask;
+ public ColorMaskRgba[] ColorMasks;
public bool PrimitiveRestartEnabled;
public uint PrimitiveRestartIndex;
@@ -69,6 +86,8 @@
{
ConstBufferKeys[Stage] = new long[ConstBuffersPerStage];
}
+
+ ColorMasks = new ColorMaskRgba[RenderTargetsCount];
}
}
} \ No newline at end of file