diff options
| author | Jules Blok <jules.blok@gmail.com> | 2017-06-26 21:08:21 +0200 |
|---|---|---|
| committer | Jules Blok <jules.blok@gmail.com> | 2017-07-05 22:43:39 +0200 |
| commit | 1f2d43c8709e5fab2f8c3c7de81bdf160b5f6363 (patch) | |
| tree | 5c8dd520b7a8dcc756940757883561add2dde9a0 /Source/Core/VideoBackends/Vulkan/PostProcessing.cpp | |
| parent | f3508742ac3ef87ab1093ab284e36034f7639a5f (diff) | |
Vulkan: Implement Quad-Buffered stereoscopy support.
Diffstat (limited to 'Source/Core/VideoBackends/Vulkan/PostProcessing.cpp')
| -rw-r--r-- | Source/Core/VideoBackends/Vulkan/PostProcessing.cpp | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/Source/Core/VideoBackends/Vulkan/PostProcessing.cpp b/Source/Core/VideoBackends/Vulkan/PostProcessing.cpp index db8da49499..971de51180 100644 --- a/Source/Core/VideoBackends/Vulkan/PostProcessing.cpp +++ b/Source/Core/VideoBackends/Vulkan/PostProcessing.cpp @@ -41,11 +41,14 @@ void VulkanPostProcessing::BlitFromTexture(const TargetRectangle& dst, const Tar const Texture2D* src_tex, int src_layer, VkRenderPass render_pass) { + // If the source layer is negative we simply copy all available layers. + VkShaderModule geometry_shader = + src_layer < 0 ? g_object_cache->GetPassthroughGeometryShader() : VK_NULL_HANDLE; VkShaderModule fragment_shader = m_fragment_shader != VK_NULL_HANDLE ? m_fragment_shader : m_default_fragment_shader; UtilityShaderDraw draw(g_command_buffer_mgr->GetCurrentCommandBuffer(), g_object_cache->GetPipelineLayout(PIPELINE_LAYOUT_STANDARD), render_pass, - g_object_cache->GetPassthroughVertexShader(), VK_NULL_HANDLE, + g_object_cache->GetPassthroughVertexShader(), geometry_shader, fragment_shader); // Source is always bound. |
