diff --git a/renderdoc/core/resource_manager.cpp b/renderdoc/core/resource_manager.cpp index 29c572b62..56888ad48 100644 --- a/renderdoc/core/resource_manager.cpp +++ b/renderdoc/core/resource_manager.cpp @@ -77,8 +77,12 @@ FrameRefType ComposeFrameRefs(FrameRefType first, FrameRefType second) // A `None` reference after any other reference type does not change // the first reference type return first; + else if(first == eFrameRef_PartialWrite && second == eFrameRef_Read) + // a `Read` reference after a partial write means we need to store `WriteBeforeRead` instead + // of just `Read`. + return eFrameRef_WriteBeforeRead; else - // A `None` or `Write` reference before any non-`None` reference type + // Otherwise a `None` or `Write` reference before any non-`None` reference type // does not change the reference type. return second;