From 68760f5b20c3abf27e7013bbcf519eb049667248 Mon Sep 17 00:00:00 2001 From: Philip Rebohle Date: Mon, 28 Oct 2019 14:15:44 +0100 Subject: [PATCH] [dxbc] Parse dynamically indexed flag for constant buffers --- src/dxbc/dxbc_decoder.h | 4 ++++ src/dxbc/dxbc_enums.h | 6 ++++++ 2 files changed, 10 insertions(+) diff --git a/src/dxbc/dxbc_decoder.h b/src/dxbc/dxbc_decoder.h index 45954027..9f5b2fc1 100644 --- a/src/dxbc/dxbc_decoder.h +++ b/src/dxbc/dxbc_decoder.h @@ -327,6 +327,10 @@ namespace dxvk { DxbcUavFlags uavFlags() const { return DxbcUavFlags(bit::extract(m_bits, 16, 16)); } + + DxbcConstantBufferAccessType accessType() const { + return DxbcConstantBufferAccessType(bit::extract(m_bits, 11, 11)); + } uint32_t controlPointCount() const { return bit::extract(m_bits, 11, 16); diff --git a/src/dxbc/dxbc_enums.h b/src/dxbc/dxbc_enums.h index 5ecd10bd..214780d0 100644 --- a/src/dxbc/dxbc_enums.h +++ b/src/dxbc/dxbc_enums.h @@ -625,5 +625,11 @@ namespace dxvk { Raw = 1, Structured = 2, }; + + + enum class DxbcConstantBufferAccessType : uint32_t { + StaticallyIndexed = 0, + DynamicallyIndexed = 1, + }; } \ No newline at end of file