PixelShaderGen: For custom textures and scaled EFB copies, use correct texel to pixel mapping when sampling textures

(D3D9 only)

This is basically the same as revision e58692653a, just for scaled textures and with a LOT more work...
This commit is contained in:
NeoBrainX
2012-02-20 17:55:18 +01:00
parent d068686a7f
commit 9adc119e3c
8 changed files with 61 additions and 25 deletions

View File

@ -234,7 +234,7 @@ void VertexManager::vFlush()
if (tentry)
{
// 0s are probably for no manual wrapping needed.
PixelShaderManager::SetTexDims(i, tentry->native_width, tentry->native_height, 0, 0);
PixelShaderManager::SetTexDims(i, tentry->native_width, tentry->native_height, tentry->virtual_width, tentry->virtual_height, 0, 0, API_D3D11);
}
else
ERROR_LOG(VIDEO, "error loading texture");
@ -243,7 +243,7 @@ void VertexManager::vFlush()
// set global constants
VertexShaderManager::SetConstants();
PixelShaderManager::SetConstants();
PixelShaderManager::SetConstants(API_D3D11);
bool useDstAlpha = !g_ActiveConfig.bDstAlphaPass && bpmem.dstalpha.enable && bpmem.blendmode.alphaupdate &&
bpmem.zcontrol.pixel_format == PIXELFMT_RGBA6_Z24;