summaryrefslogtreecommitdiff
path: root/Source/Core/VideoBackends/D3D/LineGeometryShader.cpp
diff options
context:
space:
mode:
authorYuriy O'Donnell <yuriyo@gmail.com>2014-10-29 01:19:09 +0100
committerYuriy O'Donnell <yuriyo@gmail.com>2014-12-07 18:17:19 +0100
commit6e9226650d44fd79343f1fcfa30c7f04ee4cd01f (patch)
tree4dabe0bfb77817632e60d000a4fe654c2f2ae8fa /Source/Core/VideoBackends/D3D/LineGeometryShader.cpp
parentd83f0308af01bbfa0a1da451c55f2db48ac1617f (diff)
D3D: Implemented context state caching
This avoids most of the redundant API calls.
Diffstat (limited to 'Source/Core/VideoBackends/D3D/LineGeometryShader.cpp')
-rw-r--r--Source/Core/VideoBackends/D3D/LineGeometryShader.cpp5
1 files changed, 3 insertions, 2 deletions
diff --git a/Source/Core/VideoBackends/D3D/LineGeometryShader.cpp b/Source/Core/VideoBackends/D3D/LineGeometryShader.cpp
index 9cd3ba6b5a..692f099ab7 100644
--- a/Source/Core/VideoBackends/D3D/LineGeometryShader.cpp
+++ b/Source/Core/VideoBackends/D3D/LineGeometryShader.cpp
@@ -6,6 +6,7 @@
#include "VideoBackends/D3D/D3DBase.h"
#include "VideoBackends/D3D/D3DShader.h"
+#include "VideoBackends/D3D/D3DState.h"
#include "VideoBackends/D3D/LineGeometryShader.h"
#include "VideoCommon/VertexShaderGen.h"
@@ -223,8 +224,8 @@ bool LineGeometryShader::SetShader(u32 components, float lineWidth,
DEBUG_LOG(VIDEO, "Line params: width %f, texOffset %f, vpWidth %f, vpHeight %f",
lineWidth, texOffset, vpWidth, vpHeight);
- D3D::context->GSSetShader(shaderIt->second, nullptr, 0);
- D3D::context->GSSetConstantBuffers(0, 1, &m_paramsBuffer);
+ D3D::stateman->setGeometryShader(shaderIt->second);
+ D3D::stateman->setGeometryConstants(m_paramsBuffer);
return true;
}