summaryrefslogtreecommitdiff
path: root/Source/Core/VideoBackends/D3D/Render.cpp
diff options
context:
space:
mode:
authorScott Mansell <phiren@gmail.com>2015-01-03 06:06:56 +1300
committerScott Mansell <phiren@gmail.com>2015-01-23 03:32:31 +1300
commit88c7afd315d06c27e459a8352f753cdeca5a1fe5 (patch)
tree9f207f8dc65159d269ef534479672e007e99e3cb /Source/Core/VideoBackends/D3D/Render.cpp
parent418296961cba39e4ae5bc441b3f52bf1459ad2bb (diff)
Make zfreeze use screenspace coordinates independant of IR.
OpenGL requires the y coordinates to be flipped. Also refactored PixelGen code to remove duplicate code.
Diffstat (limited to 'Source/Core/VideoBackends/D3D/Render.cpp')
-rw-r--r--Source/Core/VideoBackends/D3D/Render.cpp4
1 files changed, 4 insertions, 0 deletions
diff --git a/Source/Core/VideoBackends/D3D/Render.cpp b/Source/Core/VideoBackends/D3D/Render.cpp
index 268a408022..ea6bb924b6 100644
--- a/Source/Core/VideoBackends/D3D/Render.cpp
+++ b/Source/Core/VideoBackends/D3D/Render.cpp
@@ -33,6 +33,7 @@
#include "VideoCommon/ImageWrite.h"
#include "VideoCommon/OnScreenDisplay.h"
#include "VideoCommon/PixelEngine.h"
+#include "VideoCommon/PixelShaderManager.h"
#include "VideoCommon/Statistics.h"
#include "VideoCommon/VertexShaderManager.h"
#include "VideoCommon/VideoConfig.h"
@@ -231,6 +232,7 @@ Renderer::Renderer(void *&window_handle)
s_last_stereo_mode = g_ActiveConfig.iStereoMode > 0;
s_last_xfb_mode = g_ActiveConfig.bUseRealXFB;
CalculateTargetSize(s_backbuffer_width, s_backbuffer_height);
+ PixelShaderManager::SetEfbScaleChanged();
SetupDeviceObjects();
@@ -946,6 +948,8 @@ void Renderer::SwapImpl(u32 xfbAddr, u32 fbWidth, u32 fbStride, u32 fbHeight, co
s_last_stereo_mode = g_ActiveConfig.iStereoMode > 0;
CalculateTargetSize(s_backbuffer_width, s_backbuffer_height);
+ PixelShaderManager::SetEfbScaleChanged();
+
D3D::context->OMSetRenderTargets(1, &D3D::GetBackBuffer()->GetRTV(), nullptr);
delete g_framebuffer_manager;