Am Sonntag 25 Februar 2007 21:57 schrieb Rok Mandeljc:
Hey all,
Now, when the game is run with 64MB of VideoMemorySize, upon reaching the same point, IDirectDrawImpl_CreateNewSurface returns WINED3DERR_OUTOFVIDEOMEMORY (because of "IWineD3DDevice_GetAvailableTextureMem(iface) <= _size" check in D3DCREATERESOURCEOBJECTINSTANCE macro) and intro movie starts playing. So it seems Baldur's Gate 2 is trying to create as many surfaces as possible before running out of memory. And the problem arises when specified memory size is large enough to take up all GDI's heap...
Now that seems interesting. Actually, I have never had a 2D application creating that much surfaces, and the old ddraw code only advertised 8 mb of mem. It might be an out of memory somewhere, but not sure how and why.
You could try opengl surfaces. Those do not have a DIB section, unless the app calls GetDC on the surface