diff options
| author | 2021-04-15 22:46:11 -0300 | |
|---|---|---|
| committer | 2021-07-22 21:51:27 -0400 | |
| commit | 183855e396cc6918d36fbf3e38ea426e934b4e3e (patch) | |
| tree | a665794753520c09a1d34d8a086352894ec1cb72 /src/shader_recompiler/profile.h | |
| parent | shader: Mark atomic instructions as writes (diff) | |
| download | yuzu-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.h | 16 |
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 | ||
| 41 | enum class TessPrimitive { | ||
| 42 | Isolines, | ||
| 43 | Triangles, | ||
| 44 | Quads, | ||
| 45 | }; | ||
| 46 | |||
| 47 | enum class TessSpacing { | ||
| 48 | Equal, | ||
| 49 | FractionalOdd, | ||
| 50 | FractionalEven, | ||
| 51 | }; | ||
| 52 | |||
| 41 | struct TransformFeedbackVarying { | 53 | struct 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; |