aboutsummaryrefslogtreecommitdiff
path: root/src/Ryujinx.Graphics.Shader/Translation/FeatureFlags.cs
diff options
context:
space:
mode:
Diffstat (limited to 'src/Ryujinx.Graphics.Shader/Translation/FeatureFlags.cs')
-rw-r--r--src/Ryujinx.Graphics.Shader/Translation/FeatureFlags.cs27
1 files changed, 27 insertions, 0 deletions
diff --git a/src/Ryujinx.Graphics.Shader/Translation/FeatureFlags.cs b/src/Ryujinx.Graphics.Shader/Translation/FeatureFlags.cs
new file mode 100644
index 00000000..c035f212
--- /dev/null
+++ b/src/Ryujinx.Graphics.Shader/Translation/FeatureFlags.cs
@@ -0,0 +1,27 @@
+using System;
+
+namespace Ryujinx.Graphics.Shader.Translation
+{
+ /// <summary>
+ /// Features used by the shader that are important for the code generator to know in advance.
+ /// These typically change the declarations in the shader header.
+ /// </summary>
+ [Flags]
+ public enum FeatureFlags
+ {
+ None = 0,
+
+ // Affected by resolution scaling.
+ IntegerSampling = 1 << 0,
+ FragCoordXY = 1 << 1,
+
+ Bindless = 1 << 2,
+ InstanceId = 1 << 3,
+ DrawParameters = 1 << 4,
+ RtLayer = 1 << 5,
+ CbIndexing = 1 << 6,
+ IaIndexing = 1 << 7,
+ OaIndexing = 1 << 8,
+ FixedFuncAttr = 1 << 9
+ }
+}