Wine: DirectDraw over Direct3D

Oliver Stieber oliver_stieber at
Wed Dec 14 12:44:32 CST 2005

--- Aric Cyr <Aric.Cyr at> wrote:

> Raphael <fenix <at>> writes:
> > 
> > On Tuesday 13 December 2005 09:28, Stefan Dösinger wrote:
> > > Am Dienstag, 13. Dezember 2005 04:25 schrieb Aric Cyr:
> > > > What is slow with ATI cards?  It seems that you should only need basic 3D
> > > > acceleration to do what you propose.  Is fglrx missing something that
> > > > would be required for 2D rendering?
> > >
> > > Texture upload is very slow. glReadPixels, glWritePixels and friends take
> > > ages.  That means that blt, Lock, and Unlock is really slow.
> > > There is some hope at least: Xine and Mplayer can play videos over OpenGL
 > > really fast, maybe we can find out how they do it.

> Texture upload is not too bad with the ATI drivers, but gl{Read/Write}Pixels
> will be horribly slow on most any video card.  I would hope that DDraw is using
> textures and not direct framebuffer writes (which I believe is what Roderick
> mentioned).  Especially, glTexSubImage2D() which should be even faster than
> glTexImage2D().
ATI's driver are strange, sometimes it's quicker to repack the texture so that it's byte aligned
before calling glTexSubImage2D() or glTexImage2D(), another way to inmporve performance is only
glReadPixels when the data has really changed and to implement clears &co. against a local buffer.
One of the main reasons for the slowness is that the data is being sent over the pci buss and not
via AGP. An old ATI driver < 8.18 used double buffering to improve the performance, but turning on
double buffering doesn't help with newer drivers.


To help you stay safe and secure online, we've developed the all new Yahoo! Security Centre.

More information about the wine-devel mailing list