fix(rendering): FSR1/FXAA paths not signaling inline mode to endFrame

executePostProcessing() only set inlineMode=true in the FSR2 path.
The FXAA and FSR1 paths both start INLINE render passes but returned
false, causing endFrame() to record ImGui into a secondary command
buffer and execute it inside the INLINE pass — validation errors and
UI disappearing on AMD RADV when FSR1+MSAA are both enabled.
This commit is contained in:
Kelsi 2026-04-03 21:13:35 -07:00
parent 17c16150d6
commit 161b218fa1

View file

@ -293,6 +293,7 @@ bool PostProcessPipeline::executePostProcessing(VkCommandBuffer cmd, uint32_t im
fsr2_.frameIndex = (fsr2_.frameIndex + 1) % 256; // Wrap to keep Halton values well-distributed
} else if (fxaa_.enabled && fxaa_.sceneFramebuffer) {
inlineMode = true;
// End the off-screen scene render pass
vkCmdEndRenderPass(currentCmd_);
@ -333,6 +334,7 @@ bool PostProcessPipeline::executePostProcessing(VkCommandBuffer cmd, uint32_t im
renderFXAAPass();
} else if (fsr_.enabled && fsr_.sceneFramebuffer) {
inlineMode = true;
// FSR1 upscale path — only runs when FXAA is not active.
// When both FSR1 and FXAA are enabled, FXAA took priority above.
vkCmdEndRenderPass(currentCmd_);