From 7a1744575d7569dd52739836685b6e6643ace61a Mon Sep 17 00:00:00 2001 From: NeoBrainX Date: Sat, 24 Mar 2012 16:30:00 +0100 Subject: D3D9: Fix texel to pixel mapping when sampling textures properly. --- Source/Core/VideoCommon/Src/VertexShaderManager.cpp | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) (limited to 'Source/Core/VideoCommon/Src/VertexShaderManager.cpp') diff --git a/Source/Core/VideoCommon/Src/VertexShaderManager.cpp b/Source/Core/VideoCommon/Src/VertexShaderManager.cpp index d7d25c5c85..b6afbc61c6 100644 --- a/Source/Core/VideoCommon/Src/VertexShaderManager.cpp +++ b/Source/Core/VideoCommon/Src/VertexShaderManager.cpp @@ -306,7 +306,11 @@ void VertexShaderManager::SetConstants() if (bViewportChanged) { bViewportChanged = false; - SetVSConstant4f(C_DEPTHPARAMS,xfregs.viewport.farZ / 16777216.0f,xfregs.viewport.zRange / 16777216.0f,0.0f,0.0f); + SetVSConstant4f(C_DEPTHPARAMS, + xfregs.viewport.farZ / 16777216.0f, + xfregs.viewport.zRange / 16777216.0f, + -1.f / (float)g_renderer->EFBToScaledX((int)ceil(2.0f * xfregs.viewport.wd)), + 1.f / (float)g_renderer->EFBToScaledY((int)ceil(-2.0f * xfregs.viewport.ht))); // This is so implementation-dependent that we can't have it here. UpdateViewport(s_viewportCorrection); bProjectionChanged = true; -- cgit v1.2.3