OpenGL-Accelerated DirectDraw: Experiances and expectations

Joseph Garvin k04jg02 at
Sat May 6 12:57:14 CDT 2006

Stefan Dösinger wrote:
> One of these nasty things is GetDC on the render target. Age of Empires 2 and 
> Settlers 3 to that to draw text. This is going to be unplayably slow I'm 
> afraid. Wine will need a dib engine for that to work.
I'm a bit unfamiliar with win32 but I know opengl; what exactly is
happening in this case? Does this cause it to revert to GDI for font
drawing or ... ?

> Swat3 showed another problem: It renders the main menu, mouse pointer and the 
> in-game hud with ddraw blts, which works just great basically. In opengl the 
> main menu renders at ~500 fps, instead of ~40 fps with the old gdi code. But 
> whenever I move the mouse pointer over a control, it starts locking all it's 
> surfaces in read-write mode, which requires them to be reloaded to gl and 
> takes performance down(2-3 fps). This is made worse by the surface convertion 
> for color keying emulation.
Why does the locking require reuploading the texture? Have you tried
always having textures uploaded the way you do for read-write surfaces?
The performance hit may be small.

> I expect opengl-accelerated directdraw to take some more time, and there will 
> be some games(GetDC) which are unlikely to work well at all. I will make some 
> modifications to the WineD3D texture loading code to only upload changed 
> areas, which should improve the problems a bit.
How are you planning to do that without keeping the texture in memory
after it's loaded into the card?

More information about the wine-devel mailing list