Stefan Dösinger : wined3d: Move WINED3DRS_SEPARATEALPHABLENDENABLE to the state table.
Alexandre Julliard
julliard at wine.codeweavers.com
Mon Dec 11 10:35:03 CST 2006
Module: wine
Branch: master
Commit: 92460b98d1d61ba85a9f2dd2d6e6b2ea18ab3564
URL: http://source.winehq.org/git/wine.git/?a=commit;h=92460b98d1d61ba85a9f2dd2d6e6b2ea18ab3564
Author: Stefan Dösinger <stefan at codeweavers.com>
Date: Sun Dec 10 23:14:36 2006 +0100
wined3d: Move WINED3DRS_SEPARATEALPHABLENDENABLE to the state table.
---
dlls/wined3d/device.c | 22 ++++------------------
dlls/wined3d/state.c | 14 ++++++++++----
2 files changed, 14 insertions(+), 22 deletions(-)
diff --git a/dlls/wined3d/device.c b/dlls/wined3d/device.c
index b2c129e..58d379f 100644
--- a/dlls/wined3d/device.c
+++ b/dlls/wined3d/device.c
@@ -3438,6 +3438,10 @@ static HRESULT WINAPI IWineD3DDeviceImpl
case WINED3DRS_ADAPTIVETESS_W :
case WINED3DRS_ENABLEADAPTIVETESSELLATION:
case WINED3DRS_SRGBWRITEENABLE :
+ case WINED3DRS_SEPARATEALPHABLENDENABLE :
+ case WINED3DRS_SRCBLENDALPHA :
+ case WINED3DRS_DESTBLENDALPHA :
+ case WINED3DRS_BLENDOPALPHA :
StateTable[STATE_RENDER(State)].apply(STATE_RENDER(State), This->stateBlock);
break;
@@ -3448,24 +3452,6 @@ static HRESULT WINAPI IWineD3DDeviceImpl
return WINED3DERR_INVALIDCALL;
}
- case WINED3DRS_SEPARATEALPHABLENDENABLE :
- {
- if(Value)
- ERR("(%p)->(%s,%d) not yet implemented. Missing of cap D3DPMISCCAPS_SEPARATEALPHABLEND wasn't honored?\n", This, debug_d3drenderstate(State), Value);
- break;
- }
-
- case WINED3DRS_SRCBLENDALPHA :
- case WINED3DRS_DESTBLENDALPHA :
- case WINED3DRS_BLENDOPALPHA :
- {
- if(This->stateBlock->renderState[WINED3DRS_SEPARATEALPHABLENDENABLE])
- FIXME("(%p)->(%s,%d) not yet implemented\n", This, debug_d3drenderstate(State), Value);
- else
- TRACE("(%p)->(%s,%d): recording state but WINED3DRS_SEPARATEALPHABLENDENABLE is not enabled\n", This, debug_d3drenderstate(State), Value);
- break;
- }
-
default:
FIXME("(%p)->(%s,%d) unknown state\n", This, debug_d3drenderstate(State), Value);
}
diff --git a/dlls/wined3d/state.c b/dlls/wined3d/state.c
index 44e1d47..b12940f 100644
--- a/dlls/wined3d/state.c
+++ b/dlls/wined3d/state.c
@@ -1214,6 +1214,12 @@ static void state_srgbwrite(DWORD state,
ERR("Render state WINED3DRS_SRGBWRITEENABLE not yet implemented\n");
}
+static void state_seperateblend(DWORD state, IWineD3DStateBlockImpl *stateblock) {
+ TRACE("Stub\n");
+ if(stateblock->renderState[WINED3DRS_SEPARATEALPHABLENDENABLE])
+ FIXME("(WINED3DRS_SEPARATEALPHABLENDENABLE,%d) not yet implemented\n", stateblock->renderState[WINED3DRS_SEPARATEALPHABLENDENABLE]);
+}
+
const struct StateEntry StateTable[] =
{
/* State name representative, apply function */
@@ -1427,8 +1433,8 @@ const struct StateEntry StateTable[] =
{ /*203, WINED3DRS_WRAP13 */ STATE_RENDER(WINED3DRS_WRAP0), state_wrap },
{ /*204, WINED3DRS_WRAP14 */ STATE_RENDER(WINED3DRS_WRAP0), state_wrap },
{ /*205, WINED3DRS_WRAP15 */ STATE_RENDER(WINED3DRS_WRAP0), state_wrap },
- { /*206, WINED3DRS_SEPARATEALPHABLENDENABLE */ STATE_RENDER(WINED3DRS_SEPARATEALPHABLENDENABLE), state_unknown },
- { /*207, WINED3DRS_SRCBLENDALPHA */ STATE_RENDER(WINED3DRS_SEPARATEALPHABLENDENABLE), state_unknown },
- { /*208, WINED3DRS_DESTBLENDALPHA */ STATE_RENDER(WINED3DRS_SEPARATEALPHABLENDENABLE), state_unknown },
- { /*209, WINED3DRS_BLENDOPALPHA */ STATE_RENDER(WINED3DRS_SEPARATEALPHABLENDENABLE), state_unknown },
+ { /*206, WINED3DRS_SEPARATEALPHABLENDENABLE */ STATE_RENDER(WINED3DRS_SEPARATEALPHABLENDENABLE), state_seperateblend },
+ { /*207, WINED3DRS_SRCBLENDALPHA */ STATE_RENDER(WINED3DRS_SEPARATEALPHABLENDENABLE), state_seperateblend },
+ { /*208, WINED3DRS_DESTBLENDALPHA */ STATE_RENDER(WINED3DRS_SEPARATEALPHABLENDENABLE), state_seperateblend },
+ { /*209, WINED3DRS_BLENDOPALPHA */ STATE_RENDER(WINED3DRS_SEPARATEALPHABLENDENABLE), state_seperateblend },
};
More information about the wine-cvs
mailing list