summaryrefslogtreecommitdiff
path: root/Source/Core/VideoBackends/D3D/VertexManager.cpp
diff options
context:
space:
mode:
authorJules Blok <jules.blok@gmail.com>2014-12-14 19:41:16 +0100
committerJules Blok <jules.blok@gmail.com>2014-12-14 21:23:20 +0100
commitaa4242fd9c807633f090baac2350f786a67ebe3d (patch)
treefe0e27f3c2c95f8541a01660c25cd84e9cd2c7a7 /Source/Core/VideoBackends/D3D/VertexManager.cpp
parentb406e4e1f2c696ba5f6bec04ea2e6a8cc03a02d1 (diff)
GeometryShaderGen: Pass the primitive type and always run the generator regardless of stereoscopy.
Diffstat (limited to 'Source/Core/VideoBackends/D3D/VertexManager.cpp')
-rw-r--r--Source/Core/VideoBackends/D3D/VertexManager.cpp11
1 files changed, 4 insertions, 7 deletions
diff --git a/Source/Core/VideoBackends/D3D/VertexManager.cpp b/Source/Core/VideoBackends/D3D/VertexManager.cpp
index 29fcf1c365..0bb9735994 100644
--- a/Source/Core/VideoBackends/D3D/VertexManager.cpp
+++ b/Source/Core/VideoBackends/D3D/VertexManager.cpp
@@ -141,7 +141,7 @@ void VertexManager::Draw(u32 stride)
{
D3D::stateman->SetPrimitiveTopology(D3D11_PRIMITIVE_TOPOLOGY_TRIANGLESTRIP);
D3D::stateman->SetGeometryConstants(GeometryShaderCache::GetConstantBuffer());
- D3D::stateman->SetGeometryShader(g_ActiveConfig.iStereoMode > 0 ? GeometryShaderCache::GetActiveShader() : nullptr);
+ D3D::stateman->SetGeometryShader(GeometryShaderCache::GetActiveShader());
D3D::stateman->Apply();
D3D::context->DrawIndexed(indices, startIndex, baseVertex);
@@ -219,13 +219,10 @@ void VertexManager::vFlush(bool useDstAlpha)
return;
}
- if (g_ActiveConfig.iStereoMode > 0)
+ if (!GeometryShaderCache::SetShader(current_primitive_type))
{
- if (!GeometryShaderCache::SetShader(components))
- {
- GFX_DEBUGGER_PAUSE_LOG_AT(NEXT_ERROR, true, { printf("Fail to set pixel shader\n"); });
- return;
- }
+ GFX_DEBUGGER_PAUSE_LOG_AT(NEXT_ERROR, true, { printf("Fail to set pixel shader\n"); });
+ return;
}
if (g_ActiveConfig.backend_info.bSupportsBBox && BoundingBox::active)