summaryrefslogtreecommitdiff
path: root/Source/Core/VideoBackends/D3D/VertexManager.cpp
diff options
context:
space:
mode:
authorJules Blok <jules.blok@gmail.com>2014-11-02 23:40:52 +0100
committerJules Blok <jules.blok@gmail.com>2014-12-14 13:28:41 +0100
commit9253bb7d9651f3062e4b7002a2caff377e2290b7 (patch)
treee3bff98f8d527134567f353e88314c4d22c17e4b /Source/Core/VideoBackends/D3D/VertexManager.cpp
parentd5ebdf7a9755217ed599d0e02d8a6ae2343410c3 (diff)
D3D: Add geometry shader stereoscopy support.
Diffstat (limited to 'Source/Core/VideoBackends/D3D/VertexManager.cpp')
-rw-r--r--Source/Core/VideoBackends/D3D/VertexManager.cpp10
1 files changed, 10 insertions, 0 deletions
diff --git a/Source/Core/VideoBackends/D3D/VertexManager.cpp b/Source/Core/VideoBackends/D3D/VertexManager.cpp
index c782586a65..526cc30a0b 100644
--- a/Source/Core/VideoBackends/D3D/VertexManager.cpp
+++ b/Source/Core/VideoBackends/D3D/VertexManager.cpp
@@ -214,10 +214,20 @@ void VertexManager::vFlush(bool useDstAlpha)
GFX_DEBUGGER_PAUSE_LOG_AT(NEXT_ERROR,true,{printf("Fail to set pixel shader\n");});
return;
}
+
+ if (g_ActiveConfig.iStereoMode > 0)
+ {
+ if (!GeometryShaderCache::SetShader(components))
+ {
+ GFX_DEBUGGER_PAUSE_LOG_AT(NEXT_ERROR, true, { printf("Fail to set pixel shader\n"); });
+ }
+ }
+
if (g_ActiveConfig.backend_info.bSupportsBBox && BoundingBox::active)
{
D3D::context->OMSetRenderTargetsAndUnorderedAccessViews(D3D11_KEEP_RENDER_TARGETS_AND_DEPTH_STENCIL, nullptr, nullptr, 2, 1, &BBox::GetUAV(), nullptr);
}
+
u32 stride = VertexLoaderManager::GetCurrentVertexFormat()->GetVertexStride();
PrepareDrawBuffers(stride);