diff --git a/renderdoc/driver/d3d12/d3d12_debug.cpp b/renderdoc/driver/d3d12/d3d12_debug.cpp index adadcef78..693020c2e 100644 --- a/renderdoc/driver/d3d12/d3d12_debug.cpp +++ b/renderdoc/driver/d3d12/d3d12_debug.cpp @@ -8171,9 +8171,6 @@ bool D3D12DebugManager::RenderTextureInternal(D3D12_CPU_DESCRIPTOR_HANDLE rtv, T if(resourceDesc.DepthOrArraySize > 1 && resourceDesc.Dimension != D3D12_RESOURCE_DIMENSION_TEXTURE3D) pixelData.TextureResolutionPS.z = float(resourceDesc.DepthOrArraySize); - if(resourceDesc.Dimension == D3D12_RESOURCE_DIMENSION_TEXTURE3D) - pixelData.Slice = float(cfg.sliceFace) / float(resourceDesc.DepthOrArraySize); - vertexData.Scale = cfg.scale; pixelData.ScalePS = cfg.scale; @@ -8202,6 +8199,9 @@ bool D3D12DebugManager::RenderTextureInternal(D3D12_CPU_DESCRIPTOR_HANDLE rtv, T pixelData.OutputDisplayFormat = RESTYPE_TEX2D; pixelData.Slice = float(RDCCLAMP(cfg.sliceFace, 0U, uint32_t(resourceDesc.DepthOrArraySize - 1))); + if(resourceDesc.Dimension == D3D12_RESOURCE_DIMENSION_TEXTURE3D) + pixelData.Slice = (float(cfg.sliceFace) / float(resourceDesc.DepthOrArraySize)) + 0.001f; + vector barriers; int resType = 0; PrepareTextureSampling(resource, cfg.typeHint, resType, barriers);