Stefan Dösinger : wined3d: GL_SRC_ALPHA_SATURATE is supported as src blend param only.
Alexandre Julliard
julliard at wine.codeweavers.com
Fri Aug 17 06:30:41 CDT 2007
Module: wine
Branch: master
Commit: 06cc0fa95fcca3805bdbfb99475f0d09758385e4
URL: http://source.winehq.org/git/wine.git/?a=commit;h=06cc0fa95fcca3805bdbfb99475f0d09758385e4
Author: Stefan Dösinger <stefan at codeweavers.com>
Date: Sun Aug 12 21:38:24 2007 +0200
wined3d: GL_SRC_ALPHA_SATURATE is supported as src blend param only.
---
dlls/wined3d/directx.c | 4 +++-
dlls/wined3d/state.c | 6 +++++-
2 files changed, 8 insertions(+), 2 deletions(-)
diff --git a/dlls/wined3d/directx.c b/dlls/wined3d/directx.c
index 3889554..b294004 100644
--- a/dlls/wined3d/directx.c
+++ b/dlls/wined3d/directx.c
@@ -1945,9 +1945,11 @@ static HRESULT WINAPI IWineD3DImpl_GetDeviceCaps(IWineD3D *iface, UINT Adapter,
WINED3DPBLENDCAPS_INVSRCCOLOR |
WINED3DPBLENDCAPS_ONE |
WINED3DPBLENDCAPS_SRCALPHA |
- WINED3DPBLENDCAPS_SRCALPHASAT |
WINED3DPBLENDCAPS_SRCCOLOR |
WINED3DPBLENDCAPS_ZERO;
+ /* NOTE: WINED3DPBLENDCAPS_SRCALPHASAT is not supported as dest blend factor,
+ * according to the glBlendFunc manpage
+ */
*pCaps->AlphaCmpCaps = WINED3DPCMPCAPS_ALWAYS |
WINED3DPCMPCAPS_EQUAL |
diff --git a/dlls/wined3d/state.c b/dlls/wined3d/state.c
index 82cb90e..9a768d1 100644
--- a/dlls/wined3d/state.c
+++ b/dlls/wined3d/state.c
@@ -285,7 +285,11 @@ static void state_blend(DWORD state, IWineD3DStateBlockImpl *stateblock, WineD3D
case WINED3DBLEND_INVDESTALPHA : dstBlend = GL_ONE_MINUS_DST_ALPHA; break;
case WINED3DBLEND_DESTCOLOR : dstBlend = GL_DST_COLOR; break;
case WINED3DBLEND_INVDESTCOLOR : dstBlend = GL_ONE_MINUS_DST_COLOR; break;
- case WINED3DBLEND_SRCALPHASAT : dstBlend = GL_SRC_ALPHA_SATURATE; break;
+
+ case WINED3DBLEND_SRCALPHASAT :
+ dstBlend = GL_SRC_ALPHA_SATURATE;
+ WARN("Application uses SRCALPHASAT as dest blend factor, expect problems\n");
+ break;
case WINED3DBLEND_BOTHSRCALPHA : dstBlend = GL_SRC_ALPHA;
srcBlend = GL_SRC_ALPHA;
More information about the wine-cvs
mailing list