[1/3] WineD3D: Fix a problem in BltOverride

Alexander Dorofeyev alexd4 at inbox.lv
Sat Dec 29 23:24:07 CST 2007


I don't have this game, so I can't check myself, but I think that the reason of 
slowdown may be not only that a err message is printed, but also because it 
exists with error, and that means it will have to do slower, software blit. But 
in older versions in this situation it would try hardware accelerated blit, I think.

Can you try commenting or removing the line with ERR() to check? It's 
wine/dlls/wined3d/surface.c:2976. If the game is still slower than it used to 
be, another thing you can try is also comment/remove 'return ...' statement just 
after that ERR and see what happens. After more careful look at that code, it 
looks to me both ERR and return there may be a mistake, because it causes 
regular texture -> render target blits not to happen in hardware, but it will be 
safer if you test first if it works at all without these lines :).

Maxime Bellengé wrote:
> Hi,
> 
> Yes the problem is fixed with this patch although I have millions
> traces like this one :
> 
> err:d3d_surface:IWineD3DSurfaceImpl_BltOverride Unexpected render target
> -> render target blit
> 
> It makes the game slow whereas before wine 0.9.51 if I remember exactly,
> the game was fast without this message. Maybe this trace should be made
> a warn instead of en error ?



More information about the wine-devel mailing list