[PATCH v2 1/2] d3d11: Introduce a function to convert D3D11 blend factors to D3D10.

Chip Davis cdavis at codeweavers.com
Wed Apr 8 01:11:36 CDT 2020


Signed-off-by: Chip Davis <cdavis at codeweavers.com>
---
v2: Fix backwards description.
---
 dlls/d3d11/state.c | 13 +++++++++----
 1 file changed, 9 insertions(+), 4 deletions(-)

diff --git a/dlls/d3d11/state.c b/dlls/d3d11/state.c
index a4a3021db96..c76595752f9 100644
--- a/dlls/d3d11/state.c
+++ b/dlls/d3d11/state.c
@@ -240,6 +240,11 @@ static HRESULT STDMETHODCALLTYPE d3d10_blend_state_SetPrivateDataInterface(ID3D1
 
 /* ID3D10BlendState methods */
 
+static D3D10_BLEND d3d10_blend_from_d3d11(D3D11_BLEND factor)
+{
+    return (D3D10_BLEND)factor;
+}
+
 static void STDMETHODCALLTYPE d3d10_blend_state_GetDesc(ID3D10BlendState1 *iface, D3D10_BLEND_DESC *desc)
 {
     struct d3d_blend_state *state = impl_from_ID3D10BlendState(iface);
@@ -249,11 +254,11 @@ static void STDMETHODCALLTYPE d3d10_blend_state_GetDesc(ID3D10BlendState1 *iface
     TRACE("iface %p, desc %p.\n", iface, desc);
 
     desc->AlphaToCoverageEnable = d3d11_desc->AlphaToCoverageEnable;
-    desc->SrcBlend = d3d11_desc->RenderTarget[0].SrcBlend;
-    desc->DestBlend = d3d11_desc->RenderTarget[0].DestBlend;
+    desc->SrcBlend = d3d10_blend_from_d3d11(d3d11_desc->RenderTarget[0].SrcBlend);
+    desc->DestBlend = d3d10_blend_from_d3d11(d3d11_desc->RenderTarget[0].DestBlend);
     desc->BlendOp = d3d11_desc->RenderTarget[0].BlendOp;
-    desc->SrcBlendAlpha = d3d11_desc->RenderTarget[0].SrcBlendAlpha;
-    desc->DestBlendAlpha = d3d11_desc->RenderTarget[0].DestBlendAlpha;
+    desc->SrcBlendAlpha = d3d10_blend_from_d3d11(d3d11_desc->RenderTarget[0].SrcBlendAlpha);
+    desc->DestBlendAlpha = d3d10_blend_from_d3d11(d3d11_desc->RenderTarget[0].DestBlendAlpha);
     desc->BlendOpAlpha = d3d11_desc->RenderTarget[0].BlendOpAlpha;
     for (i = 0; i < D3D10_SIMULTANEOUS_RENDER_TARGET_COUNT; ++i)
     {
-- 
2.24.0




More information about the wine-devel mailing list