WineD3D surface management cleanup

Stefan Dösinger stefandoesinger at
Sun Sep 23 17:54:01 CDT 2007

Am Sonntag, 23. September 2007 00:34:56 schrieb Roderick Colenbrander:
> > Hi,
> >
> > This mail is mainly addressed at Henri and Roderick, but I'll send it
> > here to
> > allow others to read it too.
> >
> > These patches contain some cleanups of the d3d surface loading code. It's
> > main
> > aim is to put the code that copies the surface between system memory,
> > texture
> > and drawable into a centralized place, make LockRect simpler and pbo
> > creation
> > and surface memory allocation in one place(surface allocation is not
> > completely there yet). It also makes other parts of the code simpler,
> > avoids
> > playing with the surface flags in other places, and it will allow us to
> > centralize the logic that in the case of fbo offscreen rendering the
> > drawable
> > is the same as the texture(This is also not implemented yet).
> >
> > The patches don't aim at fixing any bugs themselves, and I hardly tested
> > them,
> > so there may be a truckload of regressions. I'm mainly showing them to
> > show
> > the general direction I'm heading into.
> I have taken a quick look at it. I think it looks ok (I don't fully
> understand all changes though but that's because I didn't know the old code
> that well yet).
> What I have been wondering why remove flush_to_framebuffer_texture? In
> ddraw opengl it is a very useful mode. From what I have seen on modern
> cards textures seem to outperform drawpixels.
Ah, sorry for not explaining this. It is temporarily removed to make the move 
easier. There is a comment in LockRect explaining how two RequestLocation 
calls can be used to get the same thing flush_to_framebuffer_texture does, 
but this requires the last of the 6 copy types(texture->drawable) to be 
implemented, either using the code from drawprim.c, blt_to_drawable or the 
flush_to_framebuffer_texture code.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 189 bytes
Desc: This is a digitally signed message part.
Url : 

More information about the wine-devel mailing list