Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Vulkan: Extend the NVIDIA MSAA bug to render-pass based clears #6011

Merged
merged 1 commit into from
Sep 7, 2017
Merged

Vulkan: Extend the NVIDIA MSAA bug to render-pass based clears #6011

merged 1 commit into from
Sep 7, 2017

Conversation

stenzek
Copy link
Contributor

@stenzek stenzek commented Sep 3, 2017

Replaces #5931 by keeping the render-pass based clear around, as it can potentially benefit tilers.

Calling vkCmdClearAttachments with a partial rect, or specifying a render area in a render pass with the load op set to clear can cause the GPU to lock up, or raise a bounds violation. This only occurs on MSAA
framebuffers, and it seems when there are multiple clears in a single command buffer. Worked around by back to the slow path (drawing quads) when MSAA is enabled.

Issue reference: https://dolp.in/i10463

if (DriverDetails::HasBug(DriverDetails::BUG_BROKEN_CLEAR_LOADOP_RENDERPASS))
bool use_clear_attachments = (color_enable && alpha_enable) || z_enable;
bool use_clear_render_pass =
StateTracker::GetInstance()->InRenderPass() && color_enable && alpha_enable && z_enable;

This comment was marked as off-topic.

Calling vkCmdClearAttachments with a partial rect, or specifying a
render area in a render pass with the load op set to clear can cause the
GPU to lock up, or raise a bounds violation. This only occurs on MSAA
framebuffers, and it seems when there are multiple clears in a single
command buffer. Worked around by back to the slow path (drawing quads)
when MSAA is enabled.
@degasus
Copy link
Member

degasus commented Sep 7, 2017

LGTM

@Helios747 Helios747 merged commit e52d8ef into dolphin-emu:master Sep 7, 2017
@stenzek stenzek deleted the nvidia-vk-clears branch February 19, 2018 15:29
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Development

Successfully merging this pull request may close these issues.

3 participants