Commit Graph

863 Commits

Author SHA1 Message Date
Stefan Dösinger 5307dd2029 ddraw: Make the ddraw list lock a global dll lock. 2007-05-21 19:11:22 +02:00
Francois Gouget 0acb5810bf Assorted spelling fixes. 2007-05-15 18:09:16 +02:00
Marcus Meissner b7ac570f39 ddraw/tests: Check for failing to create surfaces. 2007-05-14 15:41:21 +02:00
Francois Gouget 72ed214932 ddraw/tests: Fix compilation on systems that don't support nameless unions. 2007-05-14 14:25:10 +02:00
Stefan Dösinger 4295b18950 ddraw: Avoid fallout of failing tests. 2007-05-11 11:26:34 +02:00
Stefan Dösinger 5c48d504fc wined3d: Destroying the resource frees all private data.
Also adds a test for ddraw, d3d8 and d3d9.
2007-05-11 11:22:31 +02:00
Stefan Dösinger a5c484cbf3 ddraw: GetSurfaceDesc returns the surface memory while the surface is locked. 2007-05-11 11:21:44 +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 6e22f03654 ddraw: Remove all non-d3d7 capability flags. 2007-05-11 11:21:11 +02:00
Stefan Dösinger 1b94a5eefd ddraw: Fix stupid bug when setting surface client memory. 2007-05-10 11:40:50 +02:00
Stefan Dösinger df891b823a ddraw: Always set fullscreen mode in wined3d.
DDSCL_NORMAL is not set at initialization. Instead of making this a
& DDSCL_NORMAL || == 0 check just set fullscreen mode always. WineD3D
will catch NOP changes anyway.
2007-05-10 11:40:40 +02:00
Stefan Dösinger d9fef10b71 ddraw: Some caps fixes.
Cards at DirectX7 times did not support non power of 2 textures, and
some games check the capatiblity flags incorrectly. Rollcage expects the
D3DPTEXTURECAPS_POW2 (limitation) flag set and fails with the reference
rasterizer which support NP2 textures and doesn't have the cap set.
2007-05-10 11:40:01 +02:00
Stefan Dösinger bed50115ee ddraw: More tests and fixes on surface attachments. 2007-05-09 12:07:46 +02:00
Stefan Dösinger 28170f0474 wined3d: Implement environment bump mapping with GL_ATI_envmap_bumpmap. 2007-05-09 12:07:32 +02:00
Stefan Dösinger 9b867f4d91 ddraw: Forward the mag filter correctly to wined3d.
Fixes the erros when using anisotropic mag filtering in the d3d7
filter demo.
2007-05-08 18:28:29 +02:00
Stefan Dösinger 0fb41a8845 wined3d: Make the blit -> flip work for windowed rendering. 2007-05-08 18:28:08 +02:00
Stefan Dösinger d93e161b1f d3d: Move clippers from DDraw to wined3d. 2007-05-08 18:27:44 +02:00
Detlef Riekenberg 00028b0c37 ddraw/tests: Fix typos in messages. 2007-05-08 13:25:55 +02:00
Stefan Dösinger 00e37a81b2 ddraw: Primary surfaces always have screen size. 2007-05-07 21:43:09 +02:00
Stefan Dösinger 742260d418 ddraw: Adjust the d3d viewport when changing the back buffer.
WineD3D sets up the viewport according to the front buffer, so this
needs to be changed to the values of the render target passed when the
d3d7 device is created and this device turns out not to be the known
front or back buffer.
2007-05-07 21:42:59 +02:00
Stefan Dösinger 2ecacc619f ddraw: Fix reported caps on compressed surfaces.
Compressed surfaces in ddraw do not have a pitch, instead the full
surface size is reported. Also adds tests for the extact behavior and
surface flags set.
2007-05-07 21:42:33 +02:00
Francois Gouget 26553b6c1d ddraw/tests: Fix compilation on systems that don't support nameless unions. 2007-05-07 14:30:14 +02:00
H. Verbeet 0b9808761f ddraw: Add a surface locking test. 2007-05-04 13:41:37 +02:00
H. Verbeet 7b48db196f d3d: Fix the surface locking rectangle validation. 2007-05-04 13:41:13 +02:00
Stefan Dösinger 6acc0a151d ddraw: Forward all 4 world matrices to wined3d. 2007-05-03 14:24:26 +02:00
Stefan Dösinger d913744f1e d3d: Calculate the size of WINED3DFVF_XYZBx FVFs. 2007-05-03 14:24:16 +02:00
Stefan Dösinger ffae39c3f3 ddraw: Update the wined3d depth stencil on device creation, render. 2007-05-01 11:42:25 +02:00
Stefan Dösinger 378005442e ddraw: Cube map structure test. 2007-05-01 11:42:25 +02:00
Stefan Dösinger cdaf29f64e ddraw: Cube texture support. 2007-05-01 11:42:25 +02:00
Stefan Dösinger 94b3fddec8 d3d: Pass the cube face to Create*Texture's surface creation callback. 2007-05-01 11:42:25 +02:00
Stefan Dösinger 7ca369d9b6 ddraw: Store a WineD3DBaseTexture instead of a WineD3DTexture. 2007-05-01 11:42:24 +02:00
Andrew Talbot 0629946e65 ddraw: Exclude unused headers. 2007-05-01 11:42:24 +02:00
Francois Gouget 5a8fc34033 Assorted spelling fixes. 2007-04-30 12:35:11 +02:00
Stefan Dösinger a61e58dbf4 ddraw: Add a test for surface attachments. 2007-04-30 12:22:14 +02:00
Stefan Dösinger 9e3e799ca3 ddraw: Complex surfaces form a tree. 2007-04-30 12:22:06 +02:00
Stefan Dösinger 87544190a5 ddraw: Move the additional surface creation into a seperate function. 2007-04-30 12:21:21 +02:00
Stefan Dösinger d30c25be83 ddraw: Do not access the surface connection structure directly in SetPalette. 2007-04-30 12:21:09 +02:00
Stefan Dösinger b4d48c7fce ddraw: Search for d3d primary a bit differently. 2007-04-30 12:20:56 +02:00
Stefan Dösinger 88af9702f1 ddraw: Use EnumAttachedSurfaces for SetColorKey. 2007-04-27 11:43:45 +02:00
Stefan Dösinger a46012eff2 ddraw: Search for texture sublevels with GetAttachedSurface. 2007-04-27 11:43:36 +02:00
Stefan Dösinger c2ffffe1ff ddraw: Use EnumAttachedSurfaces to search for a render target. 2007-04-27 11:43:27 +02:00
Stefan Dösinger 86eb79b0c9 ddraw: Add a test for EnumSurfaces. 2007-04-27 11:43:17 +02:00
Stefan Dösinger 460f71dcf8 d3d: Fix ProcessVertices.
IDirect3DDevice9::ProcessVertices takes a vertex declaration, not a
vertex buffer. The source for ProcessVertices is taken from the
stateblock, not the vertex declaration.
2007-04-26 14:54:29 +02:00
Stefan Dösinger 0386eed91f ddraw: Get rid of FVFs.
Remove all IWineD3DDevice::SetFVF calls and instead create converted
vertex declarations and use them. The idea is to remove the FVF paths
from wined3d to simplify the code, and optimize the vertex declaration
codepath.
2007-04-26 14:54:17 +02:00
Andrew Talbot e4253fd8b9 ddraw: Constify some variables. 2007-04-23 14:42:06 +02:00
Stefan Dösinger 725057da47 d3d: Remove dependency on ddraw.h header. 2007-04-16 13:20:15 +02:00
Stefan Dösinger 8a5b6df483 d3d: Enumerate palettized formats for ddraw. 2007-04-16 12:12:34 +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
Stefan Dösinger 1d4a4b75bc ddraw: When changing the back buffers also update the render target. 2007-03-29 21:00:25 +02:00
Francois Gouget d9e8a0f63e Remove unneeded checks on the GetModuleHandle() return value for cases where we are linked with the dll. 2007-03-28 12:36:13 +02:00
Andrew Talbot 4eb936db33 ddraw: Replace inline static with static inline. 2007-03-20 13:00:45 +01:00
A C Hurst 8f14d4639d wined3d: Fix struct size calculation in EnumTextureFormats. 2007-03-19 12:23:29 +01:00
Stefan Dösinger 022e884342 wined3d/ddraw: Forward DDSCL_MULTITHREADED to wined3d. 2007-03-19 12:17:18 +01:00
Stefan Dösinger 4b445124d3 direct3d: Add a fixed function fog test. 2007-03-15 12:14:50 +01:00
Stefan Huehner 51a7ca3440 Change some functions arguments from () -> (void). 2007-03-12 12:25:31 +01:00
Francois Gouget 4a1435aa79 ddraw/tests: Fix compilation on systems that don't support nameless unions. 2007-03-05 12:13:20 +01:00
Stefan Dösinger 4a16dbbbec wined3d: More Clear fixes.
Test for rectangles with x1 > x2 and y1 > y2. Empire earth passes such rects.
2007-02-27 12:20:10 +01:00
Francois Gouget a98b9d76c6 ddraw/tests: Fix compilation on systems that don't support nameless unions. 2007-02-26 17:34:06 +01:00
Francois Gouget dbbef46e5a ddraw/tests: There is no unnamed union in D3DLIGHT7. 2007-02-26 17:34:04 +01:00
Stefan Dösinger efc03f0a34 wined3d: Index buffer fixes. 2007-02-21 10:57:08 +01:00
Stefan Dösinger 76b7cac7af wined3d: Light parameter fixes. 2007-02-21 10:55:31 +01:00
Francois Gouget 93494f2ac0 Assorted spelling fixes. 2007-02-20 20:30:51 +01:00
Stefan Dösinger bbcf98209c wined3d: No bounds checking is done on sampler / texture numbers. 2007-02-20 11:49:42 +01:00
Stefan Dösinger 27113156d9 wined3d: Remove IWineD3DDevice::EnumDisplayModes. 2007-02-20 11:47:46 +01:00
Stefan Dösinger cd3bc1d17d ddraw: Test and fix IDirectDrawSurfaceX::GetDDInterface. 2007-02-19 13:09:30 +01:00
Stefan Dösinger 1036ca0df6 ddraw: Creating surfaces with old interfaces doesn't addref. 2007-02-19 13:09:18 +01:00
Stefan Dösinger 68e7ed2c90 ddraw: Fix a leak in a test. 2007-02-19 13:09:04 +01:00
Stefan Dösinger ae91cfe380 ddraw: SetClipper refcounting fix. 2007-02-19 13:08:55 +01:00
Stefan Dösinger 266fc77cf0 wined3d: Lighting is calculated for vertices without normals.
It still should be disabled for transformed vertices though.
2007-02-19 13:08:35 +01:00
Stefan Dösinger 03bc11fa16 wined3d: Visual test framework. 2007-02-19 13:07:44 +01:00
H. Verbeet a4bc52a89c wined3d: Fix WINED3DPRESENT_PARAMETERS and use it instead of D3DPRESENT_PARAMETERS. 2007-02-16 12:31:03 +01:00
Stefan Dösinger 3b3e865366 ddraw: Handle mipmapped mag filters by ignoring the mipmap parameter. 2007-02-15 16:55:52 +01:00
Stefan Dösinger c3d3dcec81 ddraw: Handle mipmapped TEXTUREMIN render states. 2007-02-15 16:55:45 +01:00
Stefan Dösinger 7c40f9aaa2 ddraw: Forward D3DRS_TEXTUREADDRESS* and D3DTSS_ADDRESS* to sampler states. 2007-02-15 16:55:33 +01:00
Stefan Dösinger 8b8e30b1e1 ddraw, wined3d: Color keying tests and fixes. 2007-02-15 11:37:00 +01:00
Stefan Dösinger 388499ff28 wined3d: More fullscreen window fixes. 2007-02-14 20:46:51 +01:00
Stefan Dösinger 67b1f4a7e9 wined3d: BeginScene and EndScene tests and fixes. 2007-02-12 12:08:34 +01:00
H. Verbeet 6112522122 wined3d: Move SetupFullscreenWindow() and RestoreWindow() from IDirectDrawImpl to IWineD3DDeviceImpl. 2007-01-19 12:28:58 +01:00
Francois Gouget d4ca34dd9b d3d: Fix the D3DFMT_XXX constant declarations. 2007-01-18 12:05:05 +01:00
Stefan Dösinger 1d3abdeeaa wined3d: Store the stream number in the strided structure. 2007-01-17 11:23:54 +01:00
Stefan Dösinger 3d14118fb7 ddraw: Get some texture stage states from their equivalent sampler states. 2007-01-10 22:01:31 +01:00
Michael Stefaniuc 33af3c5c83 janitorial: Use the C standard for multiline strings. 2007-01-10 12:28:19 +01:00
Stefan Dösinger 4e8e47fc6c ddraw: Forward the DDSCAPS2_TEXTUREMANAGE flag to wined3d. 2007-01-08 20:59:29 +01:00
Stefan Dösinger 3581d8e8d8 wined3d: Do not keep internal references on vertex buffers. 2007-01-08 20:59:06 +01:00
Andrew Talbot 386fdd81e9 ddraw: Declare some functions static. 2007-01-04 21:14:08 +01:00
Andrew Talbot 7c95df77ae ddraw: Declare some functions static. 2007-01-04 09:55:15 +01:00
Stefan Dösinger 71631f7638 wined3d: Use the baseVertexIndex in the stateblock. 2007-01-03 11:02:51 +01:00
Christoph Bumiller b1cc8bec82 ddraw: Fix the AddViewport thunk. 2007-01-03 11:01:12 +01:00
Alexandre Julliard 656fc93815 Use GetDC instead of CreateDC where possible. 2007-01-02 17:16:36 +01:00
Michael Stefaniuc c7e00c9f49 janitorial: In multiline strings there is no need for '\' at the end of the lines. 2006-12-27 13:10:13 +01:00
Günther Brammer 8485eb02dc ddraw: Add a test for IDirectDrawSurface_SetColorKey. 2006-12-21 11:25:05 +01:00
Markus Amsler 5e0fc62135 d3d: Callback infrastructure for implicit swap chain destruction in IWineD3DDevice. 2006-12-18 12:07:26 +01:00
Ulrich Czekalla 325f666fc5 ddraw: IDirectDraw3 should use its own ref count variable. 2006-12-16 17:01:52 +01:00
Ulrich Czekalla f26cb44c73 ddraw: Initialize the IDirectDraw3 vtable. 2006-12-16 17:01:46 +01:00
Vitaliy Margolen 2a63a03eb1 wined3d: When changing display modes clip cursor to the requested display size. 2006-12-15 13:44:36 +01:00
Dmitry Timoshkov 8836dea139 ddraw: Fix warnings. 2006-12-15 12:19:05 +01:00
Stefan Dösinger 46028b0832 wined3d: D3DRS_ZVISIBLE is not supposed to return an error. 2006-12-15 12:18:36 +01:00
Stefan Dösinger 2fe8a41cb8 ddraw: Add a TRACE to GetPixelFormat. 2006-12-15 12:18:31 +01:00
Ulrich Czekalla 398886799e ddraw: Add IDirectDraw3 interface. 2006-12-14 20:33:49 +01:00
Günther Brammer 3c5b9557b5 ddraw: Fix IDirectDrawSurfaceImpl_SetColorKey to also change surface_desc. 2006-12-14 20:32:39 +01:00
Marcus Meissner f0280cbd1e made functions and variables static in some testcases. 2006-12-11 12:18:29 +01:00
Markus Amsler 3fd04308ab d3d: Callback infrastructure for implicit depth stencil surface destruction in IWineD3DDevice. 2006-12-06 12:39:30 +01:00
Markus Amsler a60d4b2d2f d3d: Pass the superior creating object down to the callback functions. 2006-12-04 12:40:38 +01:00
Markus Amsler e2881758a1 ddraw: Call wined3d's SetTextureStageState not the one of d3d7. 2006-12-01 12:27:04 +01:00
Markus Amsler f8e7ddd798 Revert "d3d: Remove AddRef from IWineD3DDevice_GetBackBuffer.".
This reverts commit 478a414e58.
2006-11-30 16:04:00 +01:00
Markus Amsler 5bec2f57a1 Revert "d3d: Remove AddRef from IWineD3DDevice_GetTexture.".
This reverts commit 274df6ef88.
2006-11-30 16:04:00 +01:00
Markus Amsler 274df6ef88 d3d: Remove AddRef from IWineD3DDevice_GetTexture. 2006-11-22 11:40:31 +01:00
Markus Amsler 478a414e58 d3d: Remove AddRef from IWineD3DDevice_GetBackBuffer. 2006-11-22 11:39:52 +01:00
Francois Gouget 30e44c85c8 Assorted spelling fixes. 2006-11-07 15:25:24 +01:00
Andrey Turkin 3bc442dc8c ddraw: Add missing dereference operators. 2006-10-26 13:04:52 +02:00
Stefan Dösinger 9329efa88e ddraw: Forward the depth stencil buffer to wined3d. 2006-10-25 20:20:59 +02:00
Ivan Gyurdiev 4f611bc0e0 wined3d: Add D3DTA masks to the WINED3D namespace.
Also fix usage of D3DTSS/D3DTA in ddraw.
2006-10-24 20:06:30 +02:00
Stefan Dösinger 116236f18c ddraw: Implement GetRenderState for D3DRENDERSTATE_TEXTURE[MIN/MAG]. 2006-10-16 17:05:36 +02:00
Stefan Dösinger 1d65ade5fa ddraw: Implement GetRenderState for D3DRENDERSTATE_TEXTUREADDRESS[U/V]. 2006-10-16 17:05:31 +02:00
Stefan Dösinger e92d7cbf2b ddraw: Implement GetRenderState for D3DRENDERSTATE_TEXTUREHANDLE. 2006-10-16 12:12:58 +02:00
Stefan Dösinger 1c86290bd5 ddraw: Use real handles for state blocks. 2006-10-16 12:07:30 +02:00
Stefan Dösinger 2e5628df3f ddraw: Make the surface list a standard wine list. 2006-10-16 12:06:43 +02:00
Ivan Gyurdiev c912032aa5 wined3d: Add D3DTEXTUREOP to the WINED3D namespace. 2006-10-13 11:13:02 +02:00
Stefan Dösinger 75c67f6b45 ddraw: Do not let the a surface dimension fall to 0. 2006-10-13 11:06:28 +02:00
Stefan Dösinger b4afa19272 ddraw: Remove an incorrect size check. 2006-10-13 11:06:15 +02:00
Ivan Gyurdiev 9628a1b2e2 wined3d: Merge D3DRECT types into one type in WINED3D namespace. 2006-10-12 12:37:08 +02:00
Ivan Gyurdiev ac37163124 wined3d: Merge D3DMATRIX types into one type in WINED3D namespace. 2006-10-12 12:35:00 +02:00
Ivan Gyurdiev ec782c2b97 wined3d: D3DTRANSFORMSTATETYPE: Consistently use in the WINED3D namespace. 2006-10-12 12:33:39 +02:00
Ivan Gyurdiev b1a4bd87a9 wined3d: D3DRENDERSTATETYPE: Consistently use in the WINED3D namespace. 2006-10-12 12:33:24 +02:00
Ivan Gyurdiev 732e0e908b wined3d: Merge GAMMARAMP types into one type in WINED3D namespace. 2006-10-11 12:22:01 +02:00
Ivan Gyurdiev 5f2987ae32 wined3d: Merge VIEWPORT types into one type in WINED3D namespace. 2006-10-11 12:21:54 +02:00
Ivan Gyurdiev 90f5be2bef wined3d: Merge MATERIAL types into one type in WINED3D namespace. 2006-10-11 12:21:14 +02:00
Ivan Gyurdiev 70bbf734b1 wined3d: Merge LIGHT types into one type in WINED3D namespace. 2006-10-11 12:21:06 +02:00
H. Verbeet 2465fcb368 ddraw: Win64 printf format warning fixes. 2006-10-11 12:08:28 +02:00
H. Verbeet 37cb9de851 ddraw/tests: Win64 printf format warning fixes. 2006-10-10 19:59:14 +02:00
Jesse Allen 52296dbdbf ddraw: Fix for DDSURFACEDESC param in CreateSurface. 2006-10-10 19:33:15 +02:00
Stefan Dösinger 4ff712c938 ddraw: Remove the process counter. 2006-10-09 20:38:37 +02:00
Stefan Dösinger 3543a070ff ddraw: Protect the ddraw list. 2006-10-09 20:38:27 +02:00
Stefan Dösinger 09e794aff8 ddraw: Make the ddraw list a wine list. 2006-10-09 20:38:15 +02:00
Stefan Dösinger 48b550c9db ddraw: Set the DDSCAPS2_MIPMAPSUBLEVEL flag on sublevels. 2006-10-09 12:54:38 +02:00
James Hawkins 1a922b6a38 ddraw: Set lplpDirect3DViewport3 to NULL before returning an error (found by Smatch). 2006-10-06 15:20:46 +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
Francois Gouget 82babbee0b Add missing '\n's to Wine traces. 2006-10-05 17:46:48 +02:00
Elie Morisse f9593bfe67 ddraw: Don't destroy complex attached surfaces even if explicitely
requested as they will be liquidated anyway when the root is
destroyed.
2006-10-03 20:33:39 +02:00
Francois Gouget 66300403c4 ddraw: Only perform the screen resolution changing tests in interactive mode. 2006-10-02 11:54:39 +02:00
Francois Gouget ceb06a2f00 ddraw: Fix comparefloat() so it compiles with Visual C++ when given a negative value. 2006-09-29 17:53:12 +02:00
Michael Stefaniuc 85ce5117c5 Add a WINE_NO_LONG_INT define to many makefiles to ease the transition of DWORD/LONG/ULONG from long to int. 2006-09-29 16:08:30 +02:00
Alexandre Julliard 32ab895e46 makefiles: Generate the dependencies line to avoid some code duplication. 2006-09-14 09:38:16 +02:00
Stefan Dösinger 6286c4e70d ddraw: Pass the fullscreen flag to wined3d. 2006-09-10 10:18:45 +02:00
Stefan Dösinger 2d5b19c182 ddraw: Double buffered primary surfaces can only be created in EXLUSIVE mode. 2006-09-10 10:18:23 +02:00
Stefan Dösinger 49beec8635 ddraw: Return DDERR_NOPALETTEATTACHED if no palette is attached. 2006-09-10 10:18:12 +02:00