diff options
author | ReinUsesLisp <reinuseslisp@airmail.cc> | 2021-06-16 04:59:30 -0300 |
---|---|---|
committer | ameerj <52414509+ameerj@users.noreply.github.com> | 2021-07-22 21:51:38 -0400 |
commit | 374eeda1a35f6a1dc81cf22122c701be68e89c0f (patch) | |
tree | 1155e56fffab693fe2c66ca38e6a435562c21b6d /src/shader_recompiler/runtime_info.h | |
parent | 892b8aa2adbadf1935aa5e9d87abbc686702cb2c (diff) |
shader: Properly manage attributes not written from previous stages
Diffstat (limited to 'src/shader_recompiler/runtime_info.h')
-rw-r--r-- | src/shader_recompiler/runtime_info.h | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/src/shader_recompiler/runtime_info.h b/src/shader_recompiler/runtime_info.h index d4b047b4d4..63fe2afafc 100644 --- a/src/shader_recompiler/runtime_info.h +++ b/src/shader_recompiler/runtime_info.h @@ -5,6 +5,7 @@ #pragma once #include <array> +#include <bitset> #include <optional> #include <vector> @@ -59,6 +60,8 @@ struct TransformFeedbackVarying { struct RuntimeInfo { std::array<AttributeType, 32> generic_input_types{}; + std::bitset<32> previous_stage_stores_generic{}; + bool convert_depth_mode{}; bool force_early_z{}; @@ -72,11 +75,12 @@ struct RuntimeInfo { std::optional<CompareFunction> alpha_test_func; float alpha_test_reference{}; - // Static y negate value + /// Static Y negate value bool y_negate{}; - // Use storage buffers instead of global pointers on GLASM + /// Use storage buffers instead of global pointers on GLASM bool glasm_use_storage_buffers{}; + /// Transform feedback state for each varying std::vector<TransformFeedbackVarying> xfb_varyings; }; |