Commit Graph

340 Commits

Author SHA1 Message Date
Stefan Dösinger 99a3d76e8d d3d9: Hold the lock in Texture methods. 2007-06-25 11:34:58 +02:00
Stefan Dösinger ef5e5300e3 d3d9: Hold the lock in swapchain methods. 2007-06-22 13:43:11 +02:00
Stefan Dösinger 35c5c4528f d3d9: Hold the lock in suface methods. 2007-06-22 13:43:05 +02:00
Stefan Dösinger 80f792f350 d3d9: Hold the lock in stateblock methods. 2007-06-19 12:34:15 +02:00
Stefan Dösinger 9570cd5be4 d3d9: Release the wined3d query when the d3d9 query is destroyed. 2007-06-19 12:34:03 +02:00
Stefan Dösinger c0cc0f1062 d3d9: Hold the lock in query methods. 2007-06-19 12:33:56 +02:00
Stefan Dösinger 5194ce1972 d3d9: Hold the lock in Pixelshader functions. 2007-06-18 12:33:55 +02:00
Stefan Dösinger 896568f209 d3d9: Hold the lock in indexbuffer methods. 2007-06-18 12:33:55 +02:00
Stefan Dösinger ea3076b0f7 d3d9: Hold the lock in cubetexture methods. 2007-06-18 12:33:55 +02:00
Stefan Dösinger 0820777983 d3d9: Hold the lock in methods implemented in device.c. 2007-06-18 12:33:54 +02:00
Stefan Dösinger 66821059b4 d3d9: Hold the lock in IDirect3D9 methods. 2007-06-18 12:33:54 +02:00
Stefan Dösinger c4b801b7d1 d3d9: Add a dll global critical section. 2007-06-14 13:23:04 +02:00
Stefan Dösinger 078523f73e wined3d: Present does not clear the depth stencil. 2007-06-14 13:22:19 +02:00
H. Verbeet 6ee356fca0 wined3d: Get rid of the pBaseVertexIndex parameter to IWineD3DDeviceImpl_GetIndices, use GetBaseVertexIndex instead. 2007-06-07 11:20:48 +02:00
H. Verbeet 785771272a wined3d: Get rid of the BaseVertexIndex parameter to IWineD3DDeviceImpl_SetIndices, use SetBaseVertexIndex instead. 2007-06-06 12:10:47 +02:00
H. Verbeet b70bc73196 d3d9: Add a test for calling DrawIndexedPrimitive with a NULL index buffer. 2007-06-04 12:58:42 +02:00
Francois Gouget e6196f9ae7 d3d9/tests: Fix the Visual C++ double to float conversion warnings. 2007-05-29 13:47:01 +02:00
Francois Gouget fd578240f2 d3d9/tests: Fix compilation with Visual C++ 2005. 2007-05-29 12:12:41 +02:00
Francois Gouget d476313a49 direct3d: Remove misspelled constants as they exist correctly spelled. 2007-05-21 12:38:54 +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
H. Verbeet 1316b7f5e4 d3d9: Add a surface locking test. 2007-05-04 13:41:21 +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
Francois Gouget 5a8fc34033 Assorted spelling fixes. 2007-04-30 12:35:11 +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
Fabian Bieler 71fe9ae7da d3d9/tests: Fix fog with shader test. 2007-04-23 13:55:35 +02:00
Stefan Dösinger 725f4bfeb1 d3d9: Rework the converted vertex declaration management.
Instead of creating a converted declaration each time SetFVF is
called, exactly one declaration is created for each FVF(on demand) and
stored for the lifetime of the device. This avoids memory leaks and
makes keeping track of converted declarations easier. Wether a
declaration is converted from a fvf or not is now a static information
inside the declaration. Those declarations are not destroyed in
VertexDeclaration::Release, they stay for the lifetime of the
device. This keeps us free from tracking the declaration through
stateblocks
2007-04-18 13:13:45 +02:00
Stefan Dösinger 7cee0b2ed0 d3d9: Do not allow Direct3D9::GetAdapterModeCount to be called with D3DFMT_UNKNOWN. 2007-04-17 11:21: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 8a5b6df483 d3d: Enumerate palettized formats for ddraw. 2007-04-16 12:12:34 +02:00
Stefan Dösinger c4eb3de8d8 d3d9: Fix vertex decl test. 2007-04-13 11:42:24 +02:00
Ivan Gyurdiev 9580c3f6c3 d3d9: Add a test for the converted vertex decl. 2007-04-12 16:11:39 +02:00
Ivan Gyurdiev 46c5d223ff d3d9: Break out two helper functions from test_fvf_to_decl. 2007-04-12 16:11:13 +02:00
Stefan Dösinger 35dd693a79 d3d9: Fix the circular converted vertex declaration reference. 2007-04-12 16:10:48 +02:00
Stefan Dösinger 2db7691ec8 d3d9: AddRef the device in IDirect3DVertexDeclaration9::AddRef. 2007-04-12 16:09:23 +02:00
Andrew Talbot 43155227d6 d3d9: Void functions should not return a value. 2007-04-09 12:15:42 +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
Felix Nawothnig c343fb1cdf wined3d: Make CreateCubeTexture fail when not supported. 2007-04-02 11:28:39 +02:00
Fabian Bieler 76d153144f d3d9/tests: Add test for texbem instruction. 2007-03-23 12:32:30 +01:00
Fabian Bieler 7b31e91291 d3d9/tests: Add test for fog with shader. 2007-03-23 12:31:13 +01:00
Stefan Dösinger 022e884342 wined3d/ddraw: Forward DDSCL_MULTITHREADED to wined3d. 2007-03-19 12:17:18 +01:00
Erich Hoover 01199072dd wined3d: Fix LockRect memory location calculation for WINED3DFMT_DXT*. 2007-03-17 19:51:34 +01:00
H. Verbeet 1283772a26 d3d9: Add a LockRect test for DXTn formats. 2007-03-16 11:20:42 +01:00
H. Verbeet fd64779fd0 d3d9: Add a cubemap wrapping test. 2007-03-16 11:20:08 +01:00
Stefan Dösinger 4b445124d3 direct3d: Add a fixed function fog test. 2007-03-15 12:14:50 +01:00
Paul Vriens e343652338 d3d9/tests: Use skip as is done in the other tests. 2007-03-12 12:21:53 +01:00
H. Verbeet 26344ce3f2 d3d9: Add a mova rounding test. 2007-03-07 11:52:26 +01:00
Stefan Dösinger 5f159452ef wined3d: Clearing the depth stencil buffer fails without a depth stencil buffer. 2007-03-06 22:17:03 +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
H. Verbeet 969dc6a7ef d3d9: Free the vertex declaration elements. 2007-02-26 13:57:59 +01:00
Stefan Dösinger dd93e1fb7f wined3d: Floating point shader constant setting.
Test how shader constant limits are checked in Set*ShaderConstantF.
The vertex shader tests it based on the limits reported in the caps,
the pixel shader tests tries to find the limit manually because I
could not find a cap structure member specifying the pixel shader
constant limit.

Set*ShaderConstantF returns an error as soon as start or start + count
are bigger than the constant limit.
2007-02-21 10:56:01 +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 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 a41ba013b6 wined3d: Test for supported queries.
This test contains a table of known supported / known unsupported
queries. In theory wined3d could just report the queries it supports,
but applications may make some assumtions regarding supported /
unsupported queries and stop working if they find a query unexpectadely
supported or unsupported. It also tests what is supposed to happen if an
unsupported query is created.
2007-02-15 17:21:58 +01:00
Stefan Dösinger 7f5dccb696 wined3d: Properly release the converted vertex declaration. 2007-02-14 20:46:39 +01:00
H. Verbeet dea795f7ac d3d9: Don't store the d3d9 declaration in the wined3d object. 2007-02-14 13:54:42 +01:00
Stefan Dösinger b48dfb3c54 wined3d: Always use np2 repacking if no native np2 support is available. 2007-02-14 12:29:01 +01:00
Stefan Dösinger f196680c59 wined3d: GetRenderTargetData can call BltFast. 2007-02-14 12:27:37 +01:00
Stefan Dösinger 67b1f4a7e9 wined3d: BeginScene and EndScene tests and fixes. 2007-02-12 12:08:34 +01:00
Francois Gouget d4ca34dd9b d3d: Fix the D3DFMT_XXX constant declarations. 2007-01-18 12:05:05 +01:00
Stefan Dösinger 8658d20b3e wined3d, d3d9: Caps correction. 2007-01-15 12:44:03 +01:00
Stefan Dösinger cb74603e43 d3d9: Implement IDirect3DDevice9::StretchRect. 2007-01-12 11:49:38 +01:00
Francois Gouget 354b9e7aae d3d9/tests: Warn that tests were skipped if we could not load d3d9.dll.
But report a failed test if a mandatory function is missing from it.
Also warn if the hardware capabilities force us to skip some tests.
2007-01-12 11:25:24 +01:00
Francois Gouget 3ba0e7b01b d3d9/tests: Replace some '#if 0's with 'if (0)'s. 2007-01-08 12:08:58 +01:00
Andrew Talbot 590bca8425 d3d9: Declare some functions static. 2007-01-04 21:14:05 +01:00
Stefan Dösinger 71631f7638 wined3d: Use the baseVertexIndex in the stateblock. 2007-01-03 11:02:51 +01:00
Louis Lenders c1cc17d827 d3d9: Fix failing tests on windows, when no 3d hardware acceleration is available. 2007-01-02 13:24:08 +01:00
Alexandre Julliard 7d1f36aa1c d3d9/tests: Avoid sizeof in traces. 2006-12-29 12:49:43 +01:00
Chris Robinson b7b9d4e3c7 d3d: GetStreamSource on a stream with NULL data isn't an error. 2006-12-26 12:52:54 +01:00
Chris Robinson ed21935479 d3d: Fix adapter mode enumeration and filtering. 2006-12-20 17:58:34 +01:00
Markus Amsler d80dc79280 d3d9: Handle volume container in d3d9. 2006-12-18 12:08:08 +01:00
Markus Amsler 467b1dd3ad d3d9: Handle surface container in d3d9. 2006-12-18 12:08:02 +01:00
Markus Amsler 73b5fb059f d3d9: Fix implicit swap chain refcounting. 2006-12-18 12:07:38 +01:00
Markus Amsler 5e0fc62135 d3d: Callback infrastructure for implicit swap chain destruction in IWineD3DDevice. 2006-12-18 12:07:26 +01:00
Markus Amsler f9f3ec2f00 d3d9: Fix implicit surface refcounting. 2006-12-18 12:07:09 +01:00
Markus Amsler 63e23995bc d3d9: Handle volume refcount forwarding in d3d9. 2006-12-18 12:02:06 +01:00
Markus Amsler 04dcffe393 d3d9: Handle surface refcount forwarding in d3d9. 2006-12-18 12:01:58 +01:00
Stefan Dösinger d30f1527cc wined3d: Implement IWineD3DDevice::Reset. 2006-12-11 12:40:13 +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
Vitaliy Margolen 81c7c00bb2 wined3d/d3d9: Pitch for DXTn textures can not be 0. With tests. 2006-12-04 12:38:16 +01:00
Markus Amsler dc0afe4242 d3d9: Remove unreachable return. 2006-12-01 13:16:12 +01:00
Markus Amsler 61087377a0 d3d9: Use correct COM macros. 2006-12-01 12:27:15 +01:00
Markus Amsler bd072332e1 Revert "d3d: Remove AddRef from IWineD3DDevice_GetDirect3D.".
This reverts commit 167b83c28a.
2006-11-30 16:04:00 +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 b657cd5f58 Revert "d3d: Remove AddRef from IWineD3DDevice_GetRenderTarget.".
This reverts commit a7518f6f54.
2006-11-30 16:04:00 +01:00
Markus Amsler f5204b8afe Revert "d3d: Remove AddRef from IWineD3DDevice_GetDepthStencilSurface.".
This reverts commit 18546a65e6.
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 3a270375d7 Revert "d3d: Remove AddRef from IWineD3DDevice_GetStreamSource.".
This reverts commit 16b1e046d8.
2006-11-30 16:03:59 +01:00
Markus Amsler 9dd81f64cb Revert "d3d: Remove AddRef from IWineD3DDevice_GetIndices.".
This reverts commit 5c4008719c.
2006-11-30 16:03:59 +01:00
Markus Amsler c40501db50 Revert "d3d: Remove AddRef from IWineD3DDevice_GetSwapChain.".
This reverts commit f84f687e6d.
2006-11-30 16:03:59 +01:00
Markus Amsler f84f687e6d d3d: Remove AddRef from IWineD3DDevice_GetSwapChain. 2006-11-22 11:40:50 +01:00
Markus Amsler 5c4008719c d3d: Remove AddRef from IWineD3DDevice_GetIndices. 2006-11-22 11:40:43 +01:00
Markus Amsler 16b1e046d8 d3d: Remove AddRef from IWineD3DDevice_GetStreamSource. 2006-11-22 11:40:37 +01:00
Markus Amsler 274df6ef88 d3d: Remove AddRef from IWineD3DDevice_GetTexture. 2006-11-22 11:40:31 +01:00
Markus Amsler 18546a65e6 d3d: Remove AddRef from IWineD3DDevice_GetDepthStencilSurface. 2006-11-22 11:40:24 +01:00
Markus Amsler a7518f6f54 d3d: Remove AddRef from IWineD3DDevice_GetRenderTarget. 2006-11-22 11:40:05 +01:00
Markus Amsler 478a414e58 d3d: Remove AddRef from IWineD3DDevice_GetBackBuffer. 2006-11-22 11:39:52 +01:00