From af67b951de1bb929fb48a30e23dfc223d47c4491 Mon Sep 17 00:00:00 2001 From: baldurk Date: Mon, 3 Jun 2024 12:13:03 +0100 Subject: [PATCH] Ensure descriptor sizes are properly initialised in default pipe state --- renderdoc/api/replay/d3d11_pipestate.h | 4 ++-- renderdoc/api/replay/gl_pipestate.h | 4 ++-- renderdoc/core/image_viewer.cpp | 2 ++ 3 files changed, 6 insertions(+), 4 deletions(-) diff --git a/renderdoc/api/replay/d3d11_pipestate.h b/renderdoc/api/replay/d3d11_pipestate.h index dc67c1249..b52ef1432 100644 --- a/renderdoc/api/replay/d3d11_pipestate.h +++ b/renderdoc/api/replay/d3d11_pipestate.h @@ -537,13 +537,13 @@ struct State :type: int )"); - uint32_t descriptorCount; + uint32_t descriptorCount = 0; DOCUMENT(R"(The byte size of a descriptor in the virtual descriptor storage. :type: int )"); - uint32_t descriptorByteSize; + uint32_t descriptorByteSize = 0; DOCUMENT(R"(The stream-out pipeline stage. diff --git a/renderdoc/api/replay/gl_pipestate.h b/renderdoc/api/replay/gl_pipestate.h index 33a775285..a0733d415 100644 --- a/renderdoc/api/replay/gl_pipestate.h +++ b/renderdoc/api/replay/gl_pipestate.h @@ -649,13 +649,13 @@ struct State :type: int )"); - uint32_t descriptorCount; + uint32_t descriptorCount = 0; DOCUMENT(R"(The byte size of a descriptor in the virtual descriptor storage. :type: int )"); - uint32_t descriptorByteSize; + uint32_t descriptorByteSize = 0; DOCUMENT(R"(Texture completeness issues of descriptors in the descriptor store. diff --git a/renderdoc/core/image_viewer.cpp b/renderdoc/core/image_viewer.cpp index 0df734aea..586d3dc72 100644 --- a/renderdoc/core/image_viewer.cpp +++ b/renderdoc/core/image_viewer.cpp @@ -236,6 +236,8 @@ public: void SetPipelineStates(D3D11Pipe::State *d3d11, D3D12Pipe::State *d3d12, GLPipe::State *gl, VKPipe::State *vk) { + d3d11->descriptorCount = 0; + d3d11->descriptorByteSize = 0; d3d11->outputMerger.renderTargets.resize(1); d3d11->outputMerger.renderTargets[0].resource = m_TextureID; d3d11->outputMerger.renderTargets[0].format = m_TexDetails.format;