Pb WineD3D: power of 2 surface and non power of 2 DIB section
stefandoesinger at gmx.at
Tue Jul 11 12:46:33 CDT 2006
Am Montag 10 Juli 2006 22:10 schrieb Christian Costa:
> When calling CreateSurface, a power of 2 surface is created and then the
> necessary memory is allocated.
> If we try to get the DC with GetDC, a DIB section is created with the
> original size of the surface and data from the surface
> is copied to the DIB section The power of 2 surface being greater than
> the DIB section, this makes Wine crashes.
I got nonpower of 2 dib sections working for some games here, and as far as I
remember I create the dib section with the full pow2 size.
My idea is to switch to using np2 repacking by default and dropping the other
np2 mode. To avoid the performance loss we can just keep the texture copy in
local ram if the app locks it regularily, so we don't have to call
glGetTexImage nor repack the texture :-). This should be done for pow2
textures too. I've started that already by defining some surface flags, but
there is no code yet for that.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Size: 191 bytes
Desc: not available
Url : http://www.winehq.org/pipermail/wine-devel/attachments/20060711/2c0c2595/attachment.pgp
More information about the wine-devel