OpenGL-Accelerated DirectDraw: Experiances and expectations
k04jg02 at kzoo.edu
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