Commit Graph

1134 Commits

Author SHA1 Message Date
Stefan Dösinger dc80a3ede5 d3d: Unify WINED3DVERTEXBUFFER_DESC and WINED3DINDEXBUFFER_DESC. 2009-04-08 11:36:02 +02:00
Henri Verbeet 4194d8040f ddraw: Filter invalid texture stage states passed by the application. 2009-04-01 14:23:38 +02:00
Henri Verbeet 4434d00f84 wined3d: Unify vertex and texture formats.
Some fields should be redundant now, eg. gl_vtx_type and glType. I'll leave
that for a different patch to fix though.
2009-03-27 15:51:25 +01:00
Henri Verbeet d7c7c76850 wined3d: Use separate structures for ddraw style strided data and wined3d's internal stream info. 2009-03-27 15:51:25 +01:00
Andrew Nguyen e1a1ae5e1b ddraw/tests: Skip some cooperative level tests on NT4/Win95.
The DirectX SDK reports that cooperative level flags
DDSCL_SETDEVICEWINDOW and DDSCL_SETFOCUSWINDOW are only
available on Windows 98 and higher.
2009-03-23 18:21:06 +01:00
Michael Stefaniuc 58f2a01e23 ddraw/tests: Use ULONG instead of unsigned long. 2009-03-23 12:41:21 +01:00
Paul Vriens 5974ad1200 ddraw/tests: Fix a test failure on VMware and some native boxes. 2009-03-13 14:55:47 +01:00
Paul Vriens 27f52727e4 ddraw/tests: Fix two test failures on W2K/VMware. 2009-03-13 14:53:02 +01:00
Paul Vriens d5e9c3cf92 ddraw/tests: Fix some test failures on W2K/VMware. 2009-03-12 13:09:53 +01:00
Paul Vriens ae1802d01b ddraw/tests: Fix some test failures on W2K/VMware. 2009-03-11 16:03:32 +01:00
Henri Verbeet aa3027a604 wined3d: Merge IWineD3DVertexBuffer with IWineD3DBuffer.
That still leaves IWineD3DIndexBuffer, but that code is also mostly similar,
except for the conversion code (which will be unused there).
2009-03-06 15:35:58 +01:00
Henri Verbeet 702eeb6b0c wined3d: Add separate methods for setting the primitive type. 2009-03-05 16:16:25 +01:00
Henri Verbeet 602bb1f551 wined3d: Pass the vertex count rather than the primitive count to wined3d draw methods. 2009-03-05 16:16:24 +01:00
Alexandre Julliard e047edb080 ddraw/tests: Allow IDirectDrawSurface_AddAttachedSurface failure on Windows. 2009-03-05 12:47:02 +01:00
Christian Costa f716306f36 ddraw: Implement IDirect3DViewportImpl_NextLight. 2009-03-04 13:03:52 +01:00
David Adam 22bfd1396c ddraw: Implement ComputeSphereVisibility. 2009-02-26 15:13:25 +01:00
Francois Gouget 77a3cffb1b ddraw/tests: Use win_skip() to skip over unimplemented functionality. 2009-02-24 16:57:26 +01:00
Henri Verbeet 0048a0373b d3d10core: Keep a reference to the wined3d device in the d3d10 device. 2009-02-23 12:20:29 +01:00
Henri Verbeet 8cefc47d81 wined3d: Add DXGI formats to WINED3DFORMAT. 2009-02-20 11:10:37 +01:00
Paul Vriens 4542ab35b4 ddraw/tests: Use skip() instead of trace(). 2009-02-19 12:54:25 +01:00
Paul Vriens b63728a850 ddraw/tests: Don't crash on W2K. 2009-02-19 12:54:21 +01:00
Vincent Pelletier f879176b99 ddraw: Use ddraw_from_d3d7 to make a (IDirectDrawImpl *) from a (IDirect3D7 *). 2009-02-10 12:31:50 +01:00
Alasdair Sinclair 8a46be6cee ddraw/tests: Fix missing void in empty parameter list. 2009-01-28 12:10:49 +01:00
Francois Gouget 96e81f0698 ddraw: Make some device_parent_*() functions static. 2009-01-26 15:13:26 +01:00
David Adam 62b8b9a8fd ddraw/tests: Add a few tests for ComputeShereVisibility. 2009-01-26 14:30:17 +01:00
Henri Verbeet 9b5f3ed8f3 ddraw: Rename the main vtables to lpVtbl. 2009-01-22 15:28:22 +01:00
Henri Verbeet c0e72b0556 ddraw: Get rid of CONVERT and CONVERT_REV. 2009-01-22 12:05:18 +01:00
Henri Verbeet b09b0fbf95 ddraw: Get rid of ddcomimpl.h. 2009-01-22 12:05:14 +01:00
Henri Verbeet 802f9c7e29 ddraw: Get rid of ICOM_OBJECT. 2009-01-22 12:05:07 +01:00
Henri Verbeet 8c4cc2af46 ddraw: Get rid of ICOM_THIS_FROM. 2009-01-22 12:05:03 +01:00
Henri Verbeet 772e56a2d8 ddraw: Get rid of ICOM_VFIELD_MULTI_NAME and ICOM_VFIELD_OFFSET. 2009-01-21 11:17:41 +01:00
Henri Verbeet 9a0c885e63 ddraw: Get rid of ICOM_INTERFACE. 2009-01-21 11:17:25 +01:00
Henri Verbeet ad171b143f ddraw: Get rid of ICOM_INIT_INTERFACE. 2009-01-21 11:16:51 +01:00
Henri Verbeet 4e38c2e943 ddraw: Get rid of ICOM_VFIELD_MULTI. 2009-01-21 11:16:41 +01:00
Henri Verbeet 94c98d0697 ddraw: Get rid of ICOM_VFIELD_MULTI_NAME2. 2009-01-21 11:16:34 +01:00
Henri Verbeet ba771f0fac ddraw: Fix Thunk_IDirect3DDeviceImpl_2_GetCurrentViewport(). 2009-01-20 12:34:20 +01:00
Henri Verbeet b2d42ad665 ddraw: Compare the against the correct IID in IDirect3DExecuteBufferImpl_QueryInterface(). 2009-01-20 12:34:17 +01:00
Henri Verbeet 2afa23867b ddraw: Add extern to some global variable declarations. 2009-01-16 13:30:08 +01:00
Henri Verbeet a966293f59 wined3d: Add an IWineD3DDeviceParent interface.
Other than being a bit nicer than passing function pointers all over the
place, this helps dxgi/d3d10. While the swapchain itself is created in dxgi,
its surfaces are constructed in d3d10core, which makes it impractical for dxgi
to pass the appropriate function pointers.
2009-01-16 13:29:32 +01:00
Michael Stefaniuc 5ee7a104c9 ddraw: Remove superfluous pointer casts. 2009-01-14 12:21:02 +01:00
Andrew Talbot 1ac07906ae ddraw: Fix double unlock of critical section. 2009-01-10 17:43:10 +01:00
Stefan Dösinger ae4e824423 ddraw[ex]: Show a caps handling difference. 2009-01-09 16:18:12 +01:00
Alexandre Julliard 149259d49f ddraw: Fix an uninitialized variable warning on non-i386. 2009-01-08 17:30:22 +01:00
Henri Verbeet cc447eac55 wined3d: Move position_transformed out of u.s in struct WineDirect3DVertexStridedData. 2009-01-08 13:21:31 +01:00
Henri Verbeet 352e60e6ed d3d: Explicitly translate texture stage states.
Ddraw and d3d8 already translate half of them, it turns out the lookup
table actually saves lines there.
2009-01-06 12:45:32 +01:00
Henri Verbeet c51bc826e8 ddraw: Properly handle sampler states. 2009-01-06 12:45:20 +01:00
Michael Stefaniuc 91bb8dc043 ddraw/tests: Remove superfluous casts. 2009-01-04 13:34:13 +01:00
Michael Stefaniuc 566a133a82 ddraw/tests: Simplify a pointer increment. 2009-01-04 13:34:05 +01:00
Stefan Dösinger 6ef2b65531 ddraw: Reject IDirectDraw3 QI in ddraw.dll. 2009-01-03 15:14:51 +01:00
Stefan Dösinger 616ea53226 ddraw: Add a test for IDirectDrawSurface::GetDC. 2009-01-03 15:14:38 +01:00
Christian Costa 3b64f895b1 ddraw: Display fixme only once in IDirectDrawImpl_WaitForVerticalBlank. 2009-01-02 11:51:29 +01:00
Nick Burns a537fb0a93 ddraw: Fix surface version setting. 2008-12-26 13:42:29 +01:00
Andrew Talbot dcbb91fc92 ddraw: Remove a superfluous semicolon. 2008-12-24 19:59:04 +01:00
Christian Costa 9605eb5af2 ddraw: Display fixme only once in IDirect3DVertexBufferImpl_Optimize. 2008-12-24 19:57:51 +01:00
Rico Schüller 26b9f8ef26 ddraw/tests: Fix alpha_test and offscreen_test on geforce 8800 on XP. 2008-12-23 20:12:28 +01:00
Rico Schüller a14fe082bf ddraw/tests: Fis some ok() lines in alpha_test(). 2008-12-23 20:11:40 +01:00
Hans Leidekker 8bd9a3aa09 janitorial: Don't depend on user32 for the self registration functions. 2008-12-17 11:38:32 +01:00
Francois Gouget ab9f028958 ddraw/tests: Make some functions static. 2008-12-15 12:25:41 +01:00
Paul Vriens 76b24fd970 ddraw/tests: Fix a test failure on a Win98 VMware box. 2008-12-12 11:38:26 +01:00
Christian Costa 1632175b35 ddraw: Fix trace. 2008-12-08 12:02:36 +01:00
Huw Davies ebb31dbbb7 ddraw/tests: Skip tests if we can't create a primary surface. 2008-12-05 13:52:38 +01:00
Michael Stefaniuc 176c8eb333 ddraw: Remove two superfluous casts. 2008-12-05 12:36:34 +01:00
Christian Costa 9d3026ff40 ddraw: Fix some comments. 2008-12-03 09:49:24 +01:00
Alexandre Julliard 23abbcb9b3 ddraw: Make some functions static. 2008-12-02 15:27:08 +01:00
Henri Verbeet a6917b143d wined3d: Use IDL to generate wined3d.h. 2008-11-25 13:37:22 +01:00
Francois Gouget fcfe436de5 ddraw: Remove WINAPI on static functions where not needed. 2008-11-24 14:25:09 +01:00
Paul Vriens 902bee8f09 ddraw/tests: Skip tests when DirectDraw4 is not supported. 2008-11-12 12:55:09 +01:00
Paul Vriens 10e5d3aa12 ddraw/tests: Fix a typo. 2008-11-12 12:55:03 +01:00
Paul Vriens fbdb78c888 ddraw/tests: Fix a test on W2K3. 2008-11-05 10:54:40 +01:00
Henri Verbeet 092b51e82a wined3d: Rename CreateAdditionalSwapChain to CreateSwapChain. 2008-10-28 12:46:46 +01:00
Henri Verbeet 7142754820 wined3d: Remove the SDKVersion parameter to WineDirect3DCreate(). 2008-10-24 14:24:59 +02:00
Henri Verbeet 99a50b5396 ddraw: Make sure pWineDirect3DCreate and pWineDirect3DCreateClipper match the header. 2008-10-24 14:24:59 +02:00
Alexandre Julliard e1ced22db1 ddraw: Convert source files to utf-8. 2008-10-18 19:19:45 +02:00
Henri Verbeet 8299df900c ddraw: Remove a few more redundant inits (LLVM/Clang). 2008-10-10 12:27:28 +02:00
Michael Stefaniuc ff5a860c0c ddraw/tests: Use FAILED instead of !SUCCEEDED. 2008-10-08 13:42:11 +02:00
Andrew Talbot 623ee7775b ddraw: Sign-compare warning fix. 2008-10-01 09:56:54 -05:00
Andrew Talbot a697d99d66 ddraw: Sign-compare warnings fix. 2008-09-29 17:32:17 -05:00
Paul Vriens a12509532c ddraw/tests: Fix a test on a Win98 box. 2008-09-22 12:16:53 +02:00
Francois Gouget 7dd099416e ddraw/tests: Fix compilation on systems that don't support nameless unions. 2008-09-08 12:47:21 +02:00
Paul Vriens 55faa6e911 ddraw/tests: Let tests run again on win9x. 2008-09-03 13:14:51 +02:00
Stefan Dösinger 09d0a35872 ddraw: Add some overlay tests. 2008-09-02 15:05:59 +02:00
Stefan Dösinger ddec94bf0f ddraw: Pass proper parameters to CheckDeviceFormat. 2008-09-02 14:56:45 +02:00
Stefan Dösinger c1eabc2ce7 ddraw: Catch attempts to opengl-render to the desktop window. 2008-09-02 14:56:35 +02:00
Stefan Dösinger d5f05c59c7 ddraw: Beware of the surface type when checking for format support. 2008-09-02 14:56:26 +02:00
Stefan Dösinger 3b48660f43 wined3d: Implement YV12 support for emulated overlays.
This is the prefered format of many codecs, and for some codecs this
is the only supported output format. As usual I try to handle all the
conversion in the GPU and keep the CPU involvement minimal to gain the
full performance of PBO transfers.
2008-09-02 14:55:50 +02:00
Stefan Dösinger ec4955630e wined3d: Silence some format spam. 2008-08-28 11:24:49 +02:00
Stefan Dösinger 58ac095d9d ddraw: Don't destroy the application's window. 2008-08-26 12:07:40 +02:00
David Adam bb67a925d6 ddraw: Only ddraw checks wether one can give a null pointer to SetMaterial. 2008-08-22 11:32:09 +02:00
Alexander Dorofeyev e718eae9e2 ddraw/tests: Skip cubemap tests when cubemap isn't supported. 2008-08-21 13:35:12 +02:00
Stefan Dösinger a950d3a10e ddraw: Set the bitdepth on YUV formats. 2008-08-20 12:33:33 +02:00
Stefan Dösinger 90e2a676e8 ddraw: Do not set the rendertarget flag just because of the backbuffer flag.
There are also overlay backbuffers, which aren't render targets. The
primarysurface and d3ddevice cap flags should be enough here.
2008-08-20 12:32:42 +02:00
Stefan Dösinger e10302d952 ddraw: Implement IDirectDraw7::GetFourCCCodes. 2008-08-19 12:25:37 +02:00
Stefan Dösinger c1bbab7c54 ddraw: Send the ddraw output to the clipper window, if any. 2008-08-19 12:25:31 +02:00
Stefan Dösinger 376944ebe4 wined3d: Remove the device-global fullscreen flag. 2008-08-19 12:24:57 +02:00
Stefan Dösinger 34b37fe241 d3d: Remove IWineD3DDevice::SetHwnd. 2008-08-19 12:22:05 +02:00
Stefan Dösinger e178ddd9e1 wined3d: Use a swapchain for GDI surfaces.
This is a long-needed cleanup aimed at removing the ddraw_primary,
ddraw_window, ddraw_width and ddraw_height members from
IWineD3DDeviceImpl, which just do not belong there.  Destination
window and screen handling is supposed to be done by swapchains.
2008-08-19 12:21:32 +02:00
Stefan Dösinger 851dd7339e wined3d: Implement overlay flipping. 2008-08-05 14:09:36 +02:00
Stefan Dösinger e795d842ec wined3d: Implement overlay position tracking. 2008-08-05 14:09:36 +02:00
Stefan Dösinger a47e7badb9 ddraw: Set ddraw caps in wined3d.
Currently the ddraw capabilities were almost static, except of D3D
support. When overlay support is added, the caps depend on certain
settings in WineD3D or capabilities available from OpenGL and Xv. So
set those caps in wined3d as well.
2008-08-04 13:10:11 +02:00
Tobias Jakobi 69797d7f3d ddraw: Fix typo in copy_mipmap_chain. 2008-07-28 14:25:09 +02:00
Alexander Dorofeyev e2ff077697 ddraw: Improve IDirect3DDevice7_Load implementation.
Copies palette and colorkey earlier in the helper function, before
copying image, also skips UpdateSurface when palette is missing. This
prevents unnecessary surface (re)loads in wined3d, and gets rid of
some wined3d palette error messages in Sacrifice.
2008-07-22 15:20:33 +02:00
Alexander Dorofeyev 2be93ce6b0 ddraw/tests: Add tests for surface caps memory flags. 2008-07-17 11:21:48 +02:00
Alexander Dorofeyev 59fc5a75e0 ddraw: Force surfaces without memory flags to video memory on creation.
Also removes now redundant setting of vidmem flag on rendertargets, prevents 
adding vidmem flag when sysmem flag is present. Fixes missing textures in Forsaken.
2008-07-17 11:21:39 +02:00
Alexandre Julliard 79c64acc7b tests: Don't depend on the static uuid libraries in the tests.
This avoids trouble with the broken MingW libraries when
cross-compiling the tests.
2008-07-08 17:51:45 +02:00
James Hawkins 11e31e580c ddraw: Fix a failing test for broken drivers. 2008-07-02 12:05:08 +02:00
James Hawkins 8830dbcca8 ddraw: Fix a failing test for broken drivers. 2008-07-02 12:04:56 +02:00
Alexander Dorofeyev cb5e06c944 ddraw: Implement FPU mode fixup in d3d7 device.
As documented in DirectX7 SDK, d3d7 devices set FPU mode (control word) on every 
call and restore it back to original state before returning, if created in 
DDSCL_FPUPRESERVE cooperative mode. This allows games to work with FPU in a 
possibly incompatible mode and avoid resetting it all the time.
2008-06-23 19:59:33 +02:00
Michael Karcher 606186d4c5 ddraw: Ensure to load wined3d before attempting to create a clipper. 2008-06-23 14:11:58 +02:00
James Hawkins 5dcec4de49 ddraw: Reset the viewport data before each test. 2008-06-18 13:51:46 +02:00
Dmitry Timoshkov 2cf47c00f2 ddraw: Avoid a not needed address-of operator. 2008-06-06 10:29:09 +02:00
James Hawkins 7352978713 ddraw: Delete the temporarily attached surface. 2008-06-02 12:35:14 +02:00
Francois Gouget 476cb96b75 ddraw: Remove trailing spaces in Wine traces. 2008-05-30 10:01:11 +02:00
Alexander Dorofeyev 940ef7a9ff ddraw: Do not return modes differing only by refresh rate without DDEDM_REFRESHRATES. 2008-05-29 12:09:19 +02:00
Jens Albretsen a2b645128f ddraw: Test for IDirect3DTexture_Load of Texture into itself. 2008-05-28 19:31:35 +02:00
Jens Albretsen 46ef2e06fc ddraw: IDirect3DTextureImpl_Load failed when texture was loading onto itself. 2008-05-28 19:31:29 +02:00
Paul Vriens f076d79c6c ddraw/tests: Don't crash on win9x. 2008-05-28 11:32:24 +02:00
Francois Gouget 8019c55cc6 ddraw/tests: Fix compilation on systems that don't support nameless unions. 2008-05-21 11:36:39 +02:00
Andrew Talbot 5bf9e88cce ddraw: Memory allocation size fix. 2008-05-13 10:40:00 +02:00
Alexander Dorofeyev 17dacf90b2 ddraw: Fix some code unprotected by ddraw lock. 2008-05-12 19:41:46 +02:00
Alexander Dorofeyev ebf1f4e6bb ddraw/tests: Add KEYSRCOVERRIDE test in p8_primary_test. 2008-05-09 11:19:43 +02:00
Andrew Talbot a6746b9e7b ddraw: Indentation fix. 2008-05-07 12:24:04 +02:00
Francois Gouget 42a61d7ed7 Assorted spelling fixes. 2008-05-06 16:10:20 +02:00
Alexander Dorofeyev c4d75213ab ddraw/tests: Add tests for IDirect3DDevice7_Load. 2008-05-06 11:26:24 +02:00
Alexander Dorofeyev d6ecf5d14d ddraw: Return DDERR_NOCOLORKEY when there is no colorkey. 2008-05-06 11:26:15 +02:00
Alexander Dorofeyev 7e8be9ecc0 ddraw: Add full implementation of IDirect3DDevice7_Load. 2008-05-06 11:26:10 +02:00
Alexander Dorofeyev 30221f7bcd ddraw: Fix some texture blending modes. 2008-05-05 19:55:30 +02:00
Alexander Dorofeyev 8f72961e50 ddraw: Move handling of D3DRENDERSTATE_TEXTUREMAPBLEND from d3ddevice2 to d3ddevice3. 2008-05-05 19:55:13 +02:00
Alexander Dorofeyev edaaf63bd6 ddraw: Move handling of D3DRENDERSTATE_TEXTUREHANDLE from d3ddevice7 to d3ddevice3.
As supported by tests, there is no reason for this state to be handled by 
d3ddevice7, and moving it to d3ddevice3 prepares for the changes in next patch 
(setting TEXTUREHANDLE state can then go through SetTexture of d3ddevice3).
2008-05-05 19:55:05 +02:00
Alexander Dorofeyev d5db7615a2 ddraw/tests: Add test for deprecated render states in d3d7. 2008-05-05 19:54:48 +02:00
Roderick Colenbrander feb753c98d ddraw: Enable EnableAutoDepthStencil to receive depth support. 2008-05-02 11:33:38 +02:00
Alexandre Julliard dad21bbcbf makefiles: List the static libraries as normal imports instead of extra libs. 2008-04-30 14:23:55 +02:00
Jens Albretsen cf38e4c930 ddraw: Fixed device name. 2008-04-28 14:33:57 +02:00
James Hawkins 404afbaa3c ddraw: Remove a test that fails in VMs. 2008-04-28 13:27:51 +02:00
James Hawkins 2f97a71e36 ddraw: Fix tests that fail with the reference rasterizer. 2008-04-25 14:53:17 +02:00
Andrew Talbot 6edfd10868 ddraw: Remove unused variables. 2008-04-18 13:57:15 +02:00
Francois Gouget 4ba16af16b ddraw/tests: Fix compilation on systems that don't support nameless unions. 2008-04-14 12:40:22 +02:00
Alexander Dorofeyev df422cf0fb ddraw/tests: Add colorkeyed blit to p8_primary_test. 2008-04-11 13:05:12 +02:00
Alexander Dorofeyev d8ae8a8780 ddraw/tests: Add viewport clearing tests. 2008-04-11 13:05:03 +02:00
Alexander Dorofeyev 44143a97c7 ddraw: Temporarily activate viewport when clearing. 2008-04-11 13:04:34 +02:00
Alexander Dorofeyev 3e237c6199 ddraw: Set active_device in AddViewport. 2008-04-11 13:04:26 +02:00
Alexander Dorofeyev 6a48e405db ddraw: Add possibility to ignore lights in viewport_activate.
Mostly NOP regarding existing functionality, but makes it possible to skip light 
activation when it's not needed (like when clearing).
2008-04-11 13:04:19 +02:00
Francois Gouget 0d0c4a355b ddraw/tests: Fix compilation on systems that don't support nameless unions. 2008-04-07 13:36:18 +02:00
Austin English f4c4488df8 Spelling fixes. 2008-04-07 13:36:17 +02:00
Alexander Dorofeyev 18b9c2bb83 ddraw/tests: Extend p8_primary_test.
Additional tests for blitting and locking.
2008-04-04 11:43:45 +02:00
Austin English 825baa23a2 ddraw: Spelling fixes. 2008-04-03 11:39:45 +02:00
Alexander Dorofeyev 003f679cbe ddraw/tests: Additional colorfill test in p8_primary_test. 2008-04-03 11:31:32 +02:00
Alexander Dorofeyev 2caa797e76 ddraw: Set surface to NULL on failure in GetAttachedSurface. 2008-04-03 11:30:30 +02:00
Stefan Dösinger 2e26c176ec ddraw: Pass the NULL rectangle to IDirectDrawSurface::Unlock. 2008-04-02 20:29:17 +02:00
Stefan Dösinger c1503a2579 ddraw: Remove some leftover test debug output. 2008-04-02 20:29:09 +02:00
Stefan Dösinger ab7630fbe3 ddraw: Add a D3D7 cube map test.
The DirectDraw cube mapping interface has a few pitfalls. So far we have
a test testing the surface enumeration, this adds a rendering test. So
far everything used in the test works.
2008-04-02 20:29:01 +02:00