summaryrefslogtreecommitdiff
path: root/src/shader_recompiler/profile.h
diff options
context:
space:
mode:
authorGravatar ReinUsesLisp2021-04-15 22:46:11 -0300
committerGravatar ameerj2021-07-22 21:51:27 -0400
commit183855e396cc6918d36fbf3e38ea426e934b4e3e (patch)
treea665794753520c09a1d34d8a086352894ec1cb72 /src/shader_recompiler/profile.h
parentshader: Mark atomic instructions as writes (diff)
downloadyuzu-183855e396cc6918d36fbf3e38ea426e934b4e3e.tar.gz
yuzu-183855e396cc6918d36fbf3e38ea426e934b4e3e.tar.xz
yuzu-183855e396cc6918d36fbf3e38ea426e934b4e3e.zip
shader: Implement tessellation shaders, polygon mode and invocation id
Diffstat (limited to 'src/shader_recompiler/profile.h')
-rw-r--r--src/shader_recompiler/profile.h16
1 files changed, 16 insertions, 0 deletions
diff --git a/src/shader_recompiler/profile.h b/src/shader_recompiler/profile.h
index c26017d75..3a04f075e 100644
--- a/src/shader_recompiler/profile.h
+++ b/src/shader_recompiler/profile.h
@@ -38,6 +38,18 @@ enum class CompareFunction {
38 Always, 38 Always,
39}; 39};
40 40
41enum class TessPrimitive {
42 Isolines,
43 Triangles,
44 Quads,
45};
46
47enum class TessSpacing {
48 Equal,
49 FractionalOdd,
50 FractionalEven,
51};
52
41struct TransformFeedbackVarying { 53struct TransformFeedbackVarying {
42 u32 buffer{}; 54 u32 buffer{};
43 u32 stride{}; 55 u32 stride{};
@@ -74,6 +86,10 @@ struct Profile {
74 bool convert_depth_mode{}; 86 bool convert_depth_mode{};
75 bool force_early_z{}; 87 bool force_early_z{};
76 88
89 TessPrimitive tess_primitive{};
90 TessSpacing tess_spacing{};
91 bool tess_clockwise{};
92
77 InputTopology input_topology{}; 93 InputTopology input_topology{};
78 94
79 std::optional<float> fixed_state_point_size; 95 std::optional<float> fixed_state_point_size;