summaryrefslogtreecommitdiff
path: root/Source/Plugins/Plugin_VideoDX11/Src/Render.cpp
diff options
context:
space:
mode:
authorNolan Check <Nolan.Check@gmail.com>2010-10-20 03:11:22 +0000
committerNolan Check <Nolan.Check@gmail.com>2010-10-20 03:11:22 +0000
commitcb453a0fb3209bc7753bc0dbbc36d4e07b7964e6 (patch)
tree3e5307b38b72602c6f6c76f6156e7bcef18b995a /Source/Plugins/Plugin_VideoDX11/Src/Render.cpp
parent479eea6ad248ecfef83968f84ca1c6659e37fe6b (diff)
DX11 plugin: Do destination-alpha in a single pass. No more drawing the same geometry twice! SMG is faster now because it uses destination-alpha extensively. This uses dual-source color blending, a DirectX 10-level feature. The equivalent OpenGL function comes from the GL_ARB_blend_func_extended extension, which was made core in OpenGL 3.3.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6294 8ced0084-cf51-0410-be5f-012b33b47a6e
Diffstat (limited to 'Source/Plugins/Plugin_VideoDX11/Src/Render.cpp')
-rw-r--r--Source/Plugins/Plugin_VideoDX11/Src/Render.cpp8
1 files changed, 4 insertions, 4 deletions
diff --git a/Source/Plugins/Plugin_VideoDX11/Src/Render.cpp b/Source/Plugins/Plugin_VideoDX11/Src/Render.cpp
index c06ff9c9de..5ab0290b82 100644
--- a/Source/Plugins/Plugin_VideoDX11/Src/Render.cpp
+++ b/Source/Plugins/Plugin_VideoDX11/Src/Render.cpp
@@ -90,8 +90,8 @@ static const D3D11_BLEND d3dSrcFactors[8] =
D3D11_BLEND_ONE,
D3D11_BLEND_DEST_COLOR,
D3D11_BLEND_INV_DEST_COLOR,
- D3D11_BLEND_SRC_ALPHA,
- D3D11_BLEND_INV_SRC_ALPHA,
+ D3D11_BLEND_SRC1_ALPHA,
+ D3D11_BLEND_INV_SRC1_ALPHA, // Use dual-source color blending for dst alpha
D3D11_BLEND_DEST_ALPHA,
D3D11_BLEND_INV_DEST_ALPHA
};
@@ -102,8 +102,8 @@ static const D3D11_BLEND d3dDestFactors[8] =
D3D11_BLEND_ONE,
D3D11_BLEND_SRC_COLOR,
D3D11_BLEND_INV_SRC_COLOR,
- D3D11_BLEND_SRC_ALPHA,
- D3D11_BLEND_INV_SRC_ALPHA,
+ D3D11_BLEND_SRC1_ALPHA,
+ D3D11_BLEND_INV_SRC1_ALPHA, // Use dual-source color blending for dst alpha
D3D11_BLEND_DEST_ALPHA,
D3D11_BLEND_INV_DEST_ALPHA
};