diff options
| author | Stenzek <stenzek@users.noreply.github.com> | 2018-01-12 11:46:55 +1000 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2018-01-12 11:46:55 +1000 |
| commit | ce0c699b6605a1d103b6434bc28d20d161040904 (patch) | |
| tree | 2f229fc73b0b7d84b92e44f2db4e0d64860c4320 /Source/Core/VideoBackends/Vulkan/VKTexture.cpp | |
| parent | b93ae142724f07cb9664a92b55887557dbb7d8ee (diff) | |
| parent | 4997fbce44f9d092c503ce34f92faafb1af1dd44 (diff) | |
Merge pull request #6246 from stenzek/vulkan-readback-fixes
Vulkan: Fix MSAA regression from 5.0-5968
Diffstat (limited to 'Source/Core/VideoBackends/Vulkan/VKTexture.cpp')
| -rw-r--r-- | Source/Core/VideoBackends/Vulkan/VKTexture.cpp | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/Source/Core/VideoBackends/Vulkan/VKTexture.cpp b/Source/Core/VideoBackends/Vulkan/VKTexture.cpp index 59be6a0eba..16aa9fecdb 100644 --- a/Source/Core/VideoBackends/Vulkan/VKTexture.cpp +++ b/Source/Core/VideoBackends/Vulkan/VKTexture.cpp @@ -56,11 +56,13 @@ std::unique_ptr<VKTexture> VKTexture::Create(const TextureConfig& tex_config) if (tex_config.rendertarget) { VkImageView framebuffer_attachments[] = {texture->GetView()}; + VkRenderPass render_pass = g_object_cache->GetRenderPass( + texture->GetFormat(), VK_FORMAT_UNDEFINED, 1, VK_ATTACHMENT_LOAD_OP_DONT_CARE); VkFramebufferCreateInfo framebuffer_info = { VK_STRUCTURE_TYPE_FRAMEBUFFER_CREATE_INFO, nullptr, 0, - TextureCache::GetInstance()->GetTextureCopyRenderPass(), + render_pass, static_cast<u32>(ArraySize(framebuffer_attachments)), framebuffer_attachments, texture->GetWidth(), @@ -175,9 +177,10 @@ void VKTexture::ScaleRectangleFromTexture(const AbstractTexture* source, m_texture->TransitionToLayout(g_command_buffer_mgr->GetCurrentCommandBuffer(), VK_IMAGE_LAYOUT_COLOR_ATTACHMENT_OPTIMAL); + VkRenderPass render_pass = g_object_cache->GetRenderPass( + m_texture->GetFormat(), VK_FORMAT_UNDEFINED, 1, VK_ATTACHMENT_LOAD_OP_DONT_CARE); UtilityShaderDraw draw(g_command_buffer_mgr->GetCurrentCommandBuffer(), - g_object_cache->GetPipelineLayout(PIPELINE_LAYOUT_STANDARD), - TextureCache::GetInstance()->GetTextureCopyRenderPass(), + g_object_cache->GetPipelineLayout(PIPELINE_LAYOUT_STANDARD), render_pass, g_shader_cache->GetPassthroughVertexShader(), g_shader_cache->GetPassthroughGeometryShader(), TextureCache::GetInstance()->GetCopyShader()); |
