metal: fix texture uploads in the middle of a render pass stopping the pass' subsequent draws from working.

This commit is contained in:
Sasha Szpakowski
2024-04-08 22:10:11 -03:00
parent 6bc91a025c
commit 7f37a7ddbe
+12 -6
View File
@@ -743,16 +743,22 @@ void Graphics::submitRenderEncoder(SubmitType type)
for (int i = 0; i < MAX_COLOR_RENDER_TARGETS; i++)
{
passDesc.colorAttachments[i].loadAction = MTLLoadActionLoad;
passDesc.colorAttachments[i].texture = nil;
passDesc.colorAttachments[i].resolveTexture = nil;
if (type == SUBMIT_DONE)
{
passDesc.colorAttachments[i].texture = nil;
passDesc.colorAttachments[i].resolveTexture = nil;
}
}
passDesc.depthAttachment.loadAction = MTLLoadActionLoad;
passDesc.depthAttachment.texture = nil;
passDesc.depthAttachment.resolveTexture = nil;
passDesc.stencilAttachment.loadAction = MTLLoadActionLoad;
passDesc.stencilAttachment.texture = nil;
passDesc.stencilAttachment.resolveTexture = nil;
if (type == SUBMIT_DONE)
{
passDesc.depthAttachment.texture = nil;
passDesc.depthAttachment.resolveTexture = nil;
passDesc.stencilAttachment.texture = nil;
passDesc.stencilAttachment.resolveTexture = nil;
}
}
}