Commit Graph

57 Commits

Author SHA1 Message Date
Stefan Dösinger
123744910f wined3d: Add a method for surface location updates. 2007-10-26 15:17:30 +02:00
Stefan Dösinger
dcff7dc213 wined3d: Begin centralizing surface location management. 2007-10-26 15:17:19 +02:00
Stefan Dösinger
aec86b4ef9 wined3d: Silently ignore setting the 0 texture on gdi surfaces. 2007-10-10 11:59:18 +02:00
Stefan Dösinger
46e2d79508 wined3d: Move the software blitting to the base surface class. 2007-09-18 09:54:49 +02:00
Stefan Dösinger
09b7d3bb44 wined3d: Give GDI surfaces their own release implementation. 2007-09-18 09:54:31 +02:00
Stefan Dösinger
9701f11850 wined3d: Give GDI surfaces their own GetDC copy. 2007-09-18 09:54:15 +02:00
Stefan Dösinger
5a7756447b wined3d: Move DIB section creation to the base surface implementation. 2007-09-18 09:54:05 +02:00
Stefan Dösinger
515ee4e89b wined3d: Clean up IWineD3DSurface::ReleaseDC. 2007-09-18 09:53:32 +02:00
Stefan Dösinger
511f9dfb2d wined3d: Clean up SetMem. 2007-09-18 09:34:08 +02:00
Stefan Dösinger
24564915b7 wined3d: Clean up AddDirtyRect. 2007-09-18 09:34:08 +02:00
Stefan Dösinger
e56c6610c6 wined3d: Clean up SetFormatDesc. 2007-09-18 09:34:08 +02:00
Stefan Dösinger
2600041703 wined3d: Clean up SetGLTextureDesc and GetGLDesc. 2007-09-18 09:34:08 +02:00
Stefan Dösinger
e2944175e5 wined3d: Base surface move, part 2. 2007-09-18 09:34:08 +02:00
Stefan Dösinger
d99143c251 wined3d: Move non-rendering surface specific code to the base class. 2007-09-18 09:34:08 +02:00
Stefan Dösinger
0c91610433 wined3d: Move resource methods to the base surface class. 2007-09-18 09:34:08 +02:00
Stefan Dösinger
8434060b7e wined3d: Start of some surface cleanup.
This patch and the following intend to make the surface code more
manageable and are a preparation to add gl3 support. The code adds a
new IWineD3DBaseSurface surface type, which will contain the
non-rendering management code. IWineD3DSurface and IWineGDISurface
will be derived from IWineD3DBaseSurface, and IWineGL3Surface can be
added later.
2007-09-18 09:34:08 +02:00
Stefan Dösinger
d2016ff892 wined3d: Store the gl format table in the gl info structure. 2007-07-30 12:49:50 +02:00
Stefan Dösinger
a0131a3272 wined3d: Split up the format table. 2007-07-30 12:49:39 +02:00
Stefan Dösinger
59efd5c7ec wined3d: Set the pow2 sizes in gl surface private setup. 2007-07-26 11:48:36 +02:00
Phil Costin
e7578dca36 wined3d: Add support for loading gamma corrected textures. 2007-06-07 13:01:49 +02:00
Stefan Dösinger
e7b68eec34 ddraw: Use point filter for blit operations.
D3DTEXF_NONE is a special value for mipmapping which disabled
mipmapping, but it is not a valid mag / min filter parameter.
D3DTEXF_POINT is what we want
2007-05-11 11:21:29 +02:00
Stefan Dösinger
7538f8d620 wined3d: Fix front buffer coords for gdi surfaces. 2007-05-08 18:28:48 +02:00
Stefan Dösinger
d93e161b1f d3d: Move clippers from DDraw to wined3d. 2007-05-08 18:27:44 +02:00
Stefan Dösinger
c87d5352a5 wined3d: Full surface DXTn copy.
Height * Pitch is not a valid way to calculate the surface size for
DXTn surfaces. Instead of messing with format specific formulas just
use the size stored in the destination surface.
2007-05-07 21:42:45 +02:00
H. Verbeet
7b48db196f d3d: Fix the surface locking rectangle validation. 2007-05-04 13:41:13 +02:00
Stefan Dösinger
725057da47 d3d: Remove dependency on ddraw.h header. 2007-04-16 13:20:15 +02:00
Stefan Dösinger
290f2eb146 wined3d: Add Filtering to IWineD3DSurface::Blt and handle it.
This is to allow StretchRect to pass the texture filter to WineD3D.
DirectDraw sets the texture filter to WINED3DTEXF_NONE, simmilar to all
other functions which do not need filtering.
2007-04-07 10:58:10 +02:00
Michael Ploujnikov
56391a3a85 wined3d: Remove DDBLT_WAIT fixme. 2007-04-02 12:05:24 +02:00
Stefan Dösinger
c54a0fc2cf wined3d: Rework surface dirtification.
Previously the surfaces stored a flag if the system memory copy was
ahead of the gl copy(SFLAG_DIRTY) or the gl copy is
ahead(SFLAG_GLDIRTY). The pbuffer copy was 'managed' differently using
SFLAG_INPBUFFER and SFLAG_INTEXTURE.

This patch replaces them with 3 flags, INSYSMEM, INPBUFFER and
INTEXTURE which specify which copy contains the most up to date
copy. It is perfectly valid to have more than one of those flags
set. One must be set at least (except at init, when no content is in
the surface yet). When one copy is modified, the flags for the others
are removed.
2007-03-07 12:18:14 +01:00
Stefan Dösinger
ebe274feed wined3d: Remove IWineD3DSurface::SetPBufferState.
The method is removed because it does not really help with
anything. It should not be exported from wined3d, there is no need for
the other libs to call it. It does not help abstraction and code
simplification in any way because it is very specific and the code
calling it has to know what is happening in the surface to use this
method.
2007-03-07 12:17:33 +01:00
H. Verbeet
75ebf29e1b wined3d: Get rid of any remaining d3d9 stuff in surface.c and surface_gdi.c. 2007-02-15 14:21:11 +01:00
Stefan Dösinger
8b8e30b1e1 ddraw, wined3d: Color keying tests and fixes. 2007-02-15 11:37:00 +01:00
H. Verbeet
34e74ffc2a wined3d: Use WINED3D_OK rather than D3D_OK. 2007-02-15 11:15:50 +01:00
Stefan Dösinger
c3f0eb489b wined3d: Remove pow2Size from the surfaces. 2007-02-14 12:28:19 +01:00
Markus Amsler
9b397ec2d5 wined3d: Remove IWineD3DSurface_GetContainerParent. 2006-12-18 12:02:17 +01:00
Ivan Gyurdiev
74cd90a18a wined3d: D3DLOCK: Use consistently in the WINED3D namespace. 2006-10-24 20:06:06 +02:00
Stefan Dösinger
3529560cd7 wined3d: Add WINED3DUSAGE_OVERLAY. 2006-10-06 12:53:24 +02:00
Stefan Dösinger
2bcacf22d3 wined3d: Add IWineD3DSurface::UpdateOverlay. 2006-10-06 12:53:24 +02:00
Stefan Dösinger
080e4f56cf wined3d: Add UpdatOverlayZOrder. 2006-10-06 12:53:24 +02:00
Stefan Dösinger
f6647486cf wined3d: Add IWineD3DSurface::GetOverlayPosition. 2006-10-06 12:53:24 +02:00
Stefan Dösinger
0f3995d21a wined3d: Add IWineD3DSurface::SetOverlayPosition. 2006-10-06 12:53:24 +02:00
Ivan Gyurdiev
3dcd3681f3 wined3d: Win64 printf fixes. 2006-10-02 14:38:04 +02:00
Stefan Dösinger
9cafbd6de0 wined3d: Surface data is 32 bit aligned. 2006-09-25 18:31:26 +02:00
Stefan Dösinger
0ce3c59477 wined3d: Fix a typo. 2006-09-25 18:21:04 +02:00
Stefan Dösinger
06106e2810 ddraw: Support using an application-provided surface pointer. 2006-07-26 15:17:59 +02:00
Stefan Dösinger
eb527c82e2 Add a common fps counter channel to ddraw, opengl and d3d. 2006-07-07 17:52:46 +02:00
Stefan Dösinger
77448f588b wined3d: Perform sanity checks on the rectangle in LockRect. 2006-06-30 20:44:27 +02:00
Francois Gouget
9bfbfcbeb4 Assorted spelling, case and grammar fixes. 2006-06-26 13:06:11 +02:00
Stefan Dösinger
495e46197a ddraw/wined3d: IDirectDrawSurface7::SetSurfaceDesc corrections. 2006-06-26 12:38:55 +02:00
Stefan Dösinger
3518747165 wined3d: Pixel format cleanup. 2006-06-21 12:15:50 +02:00