diff options
author | Hans-Kristian Arntzen <post@arntzen-software.no> | 2020-01-08 15:05:56 +0300 |
---|---|---|
committer | Hans-Kristian Arntzen <post@arntzen-software.no> | 2020-01-08 15:05:56 +0300 |
commit | ca9398c12249fad14a5022007e330c962527053c (patch) | |
tree | 178e9e1c4756ef50a5065011a465d5fca887a27d /spirv_hlsl.hpp | |
parent | b522b409ae27b256a7d6d96dbab6b1e38c65590e (diff) |
HLSL: Support loading complex composites from ByteAddressBuffer.
Diffstat (limited to 'spirv_hlsl.hpp')
-rw-r--r-- | spirv_hlsl.hpp | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/spirv_hlsl.hpp b/spirv_hlsl.hpp index b0db688b..105bf06c 100644 --- a/spirv_hlsl.hpp +++ b/spirv_hlsl.hpp @@ -182,7 +182,9 @@ private: void emit_sampled_image_op(uint32_t result_type, uint32_t result_id, uint32_t image_id, uint32_t samp_id) override; void emit_access_chain(const Instruction &instruction); void emit_load(const Instruction &instruction); - std::string read_access_chain(const SPIRAccessChain &chain); + void read_access_chain(std::string *expr, const std::string &lhs, const SPIRAccessChain &chain); + void read_access_chain_struct(const std::string &lhs, const SPIRAccessChain &chain); + void read_access_chain_array(const std::string &lhs, const SPIRAccessChain &chain); void write_access_chain(const SPIRAccessChain &chain, uint32_t value); void emit_store(const Instruction &instruction); void emit_atomic(const uint32_t *ops, uint32_t length, spv::Op op); @@ -257,6 +259,9 @@ private: std::vector<RootConstants> root_constants_layout; void validate_shader_model(); + + std::string get_unique_identifier(); + uint32_t unique_identifier_count = 0; }; } // namespace SPIRV_CROSS_NAMESPACE |