Module: wine Branch: master Commit: 762e227994b4bcd71a9f230efcf89e92dea40b8f URL: http://source.winehq.org/git/wine.git/?a=commit;h=762e227994b4bcd71a9f230efc...
Author: Stefan Dösinger stefan@codeweavers.com Date: Fri Feb 16 19:15:15 2007 +0100
wined3d: Only scream about unsupported vertex blending when it is used.
---
dlls/wined3d/state.c | 13 +++++++++---- 1 files changed, 9 insertions(+), 4 deletions(-)
diff --git a/dlls/wined3d/state.c b/dlls/wined3d/state.c index 16fddf7..257757f 100644 --- a/dlls/wined3d/state.c +++ b/dlls/wined3d/state.c @@ -2396,8 +2396,10 @@ static void loadVertexData(IWineD3DStateBlockImpl *stateblock, WineDirect3DVerte #endif
} else { - /* TODO: support blends in fixupVertices */ - FIXME("unsupported blending in openGl\n"); + /* TODO: support blends in drawStridedSlow + * No need to write a FIXME here, this is done after the general vertex decl decoding + */ + WARN("unsupported blending in openGl\n"); } } else { if (GL_SUPPORT(ARB_VERTEX_BLEND)) { @@ -2785,8 +2787,11 @@ static inline void handleStreams(IWineD3DStateBlockImpl *stateblock, BOOL useVer /* Generate some fixme's if unsupported functionality is being used */ #define BUFFER_OR_DATA(_attribute) dataLocations->u.s._attribute.lpData /* TODO: Either support missing functionality in fixupVertices or by creating a shader to replace the pipeline. */ - if (!useVertexShaderFunction && (BUFFER_OR_DATA(blendMatrixIndices) || BUFFER_OR_DATA(blendWeights))) { - FIXME("Blending data is only valid with vertex shaders %p %p\n",dataLocations->u.s.blendWeights.lpData,dataLocations->u.s.blendWeights.lpData); + if (!useVertexShaderFunction && + stateblock->renderState[WINED3DRS_VERTEXBLEND] && + (BUFFER_OR_DATA(blendMatrixIndices) || BUFFER_OR_DATA(blendWeights))) { + FIXME("Vertex Blending is not implemented yet %p %p\n",dataLocations->u.s.blendWeights.lpData,dataLocations->u.s.blendWeights.lpData); + /* TODO: Implement it using GL_ARB_vertex_blend or software emulation in drawStridedSlow */ } if (!useVertexShaderFunction && (BUFFER_OR_DATA(position2) || BUFFER_OR_DATA(normal2))) { FIXME("Tweening is only valid with vertex shaders\n");