Commit Graph

1590 Commits

Author SHA1 Message Date
Michael Stefaniuc 8d91f8b614 ddraw: Avoid "unsafe" IDirect3DMaterial3 to object casts. 2011-06-08 17:37:33 +02:00
Michael Stefaniuc db15ce6580 ddraw: Rename d3d_material_init() and have it allocate the object too. 2011-06-08 17:37:24 +02:00
Michael Stefaniuc abe0ee33eb ddraw: COM cleanup for the IDirectDrawGammaControl iface. 2011-06-08 17:37:12 +02:00
Michael Stefaniuc e3a32e8d95 ddraw: COM cleanup for the IDirect3DMaterial iface. 2011-06-07 14:18:32 +02:00
Michael Stefaniuc 0586dd8bbe ddraw: COM cleanup for the IDirect3DMaterial2 iface. 2011-06-07 14:18:32 +02:00
Ričardas Barkauskas bb063b994c ddraw: Separate IDirectDrawSurface4 vtable. 2011-06-06 21:49:23 +02:00
Ričardas Barkauskas 4582562f55 ddraw: Use unsafe_impl_from_IDirectDrawSurface4. 2011-06-06 21:49:23 +02:00
Ričardas Barkauskas 2f02bbb41f ddraw: Change lpVtbl to IDirectDrawSurface7_iface. 2011-06-06 21:49:23 +02:00
Ričardas Barkauskas 4074dd7615 ddraw: Avoid IDirectDrawSurfaceX to IDirectDrawSurface7 casts. 2011-06-06 21:49:23 +02:00
Ričardas Barkauskas 93dfe5afc3 ddraw: Use impl_from_IDirectDrawSurface7() instead of casts. 2011-06-06 21:49:23 +02:00
Ričardas Barkauskas 11bf99c5fd ddraw: Separate other conversion to IDirectDrawSurfaceImpl from conversions to ifaces. 2011-06-06 21:49:23 +02:00
Ričardas Barkauskas 705548a6ef ddraw: Separate conversion from IDirectDrawSurface7 iface to object and conversion to other iface. 2011-06-06 21:49:22 +02:00
Ričardas Barkauskas 4123c7a38a ddraw: Pass an object instead of iface to helper function CreateSurface. 2011-06-06 21:49:22 +02:00
Ričardas Barkauskas 28ce1c00a7 ddraw: Use unsafe_impl_from_IDirectDrawSurface7() for application provided interfaces. 2011-06-06 21:49:22 +02:00
Henri Verbeet 708d94212b wined3d: Don't clamp vertex depth values.
Since we report D3DPMISCCAPS_CLIPTLVERTS.
2011-06-06 16:18:33 +02:00
Andrew Nguyen a90b698e0c ddraw: Handle a callback cancellation attempt in d3d7_EnumDevices. 2011-06-01 16:09:58 +02:00
Andrew Nguyen f2f529ae38 ddraw: Extend the lifetime of the EnumDevices strings beyond function scope. 2011-06-01 16:09:53 +02:00
Ričardas Barkauskas 6d5be5033e ddraw: Change IDirectDrawSurface3_vtbl to IDirectDrawSurface3_iface. 2011-05-31 19:24:10 +02:00
Ričardas Barkauskas ecfb5c7a69 ddraw: Use a This variable in the IDirectDraw3 methods that lack one. 2011-05-31 19:23:41 +02:00
Ričardas Barkauskas 7df083193d ddraw: Rename surface_from_surface3() to impl_from_IDirectDrawSurface3(). 2011-05-31 19:23:39 +02:00
Ričardas Barkauskas fb6ceb971b ddraw: Use unsafe_impl_from_IDirectDrawSurface3() for application provided interfaces. 2011-05-31 19:22:52 +02:00
Andrew Nguyen be17277bb7 ddraw: Remove some unused structure definitions in the private ddraw header. 2011-05-31 18:32:59 +02:00
Andrew Nguyen cf6d56a43a ddraw: Add a NULL callback pointer check in the EnumDevices implementations. 2011-05-31 18:32:59 +02:00
Andrew Nguyen 7cd97b2ed4 ddraw/tests: Remove a superfluous skip check. 2011-05-31 18:32:59 +02:00
Dylan Smith 0be691ad9f ddraw: Keep a function declaration within the include guard. 2011-05-24 12:47:28 +02:00
Dylan Smith f7002c6627 ddraw: Don't interpret end padding as dwCaps2 for x64. 2011-05-24 12:47:28 +02:00
Dylan Smith 3871329872 ddraw: Avoid clearing some memory unnecessarily. 2011-05-24 12:47:27 +02:00
Henri Verbeet 1db6a7e450 ddraw/tests: Fix the depth clamping test. 2011-05-24 11:55:05 +02:00
Henri Verbeet f147c1e928 ddraw: Don't touch the window during mode setting if we're not in exclusive mode. 2011-05-24 11:53:47 +02:00
Henri Verbeet 43aac32fd5 ddraw/tests: Add a test for mode settings calls with different coop levels. 2011-05-24 11:53:44 +02:00
Henri Verbeet 3032b40c80 wined3d: Get rid of the IWineD3DDeviceParent interface. 2011-05-19 10:06:21 +02:00
Henri Verbeet 8d4ca1f815 wined3d: Remove COM from the device implementation. 2011-05-17 10:06:18 +02:00
Henri Verbeet 979e3744f7 wined3d: Remove state management methods from the IWineD3DDevice interface. 2011-05-17 10:06:15 +02:00
Francois Gouget a006296dca ddraw/tests: Fix compilation on systems that don't support nameless unions. 2011-05-16 16:35:28 +02:00
Ričardas Barkauskas a7bd11afb0 ddraw: Fix filtering of enumerated display modes. 2011-05-12 18:22:25 +02:00
Henri Verbeet 00a5f38595 wined3d: Remove object creation methods from the IWineD3DDevice interface. 2011-05-11 14:56:48 +02:00
Henri Verbeet 5e4145d0ff ddraw: Skip redundant mode setting calls. 2011-05-11 14:56:48 +02:00
Henri Verbeet 87b45c3545 ddraw/tests: Add a small test for redundant mode setting calls. 2011-05-11 14:56:48 +02:00
Stefan Dösinger a1519e62f4 ddraw: Map ZBIAS values to a smaller depth range. 2011-05-10 14:04:55 +02:00
Francois Gouget d719e831ab ddraw/tests: Add a '\n' to an ok() call. 2011-05-09 12:09:13 +02:00
Henri Verbeet 65272a4f81 ddraw/tests: Add a test for SetCooperativeLevel() window styles. 2011-05-03 14:38:06 +02:00
Henri Verbeet 0293e19928 ddraw/tests: Make sure the window is properly released by ddraw in test_wndproc(). 2011-05-03 14:38:06 +02:00
Marcus Meissner 6d144cf012 ddraw: Added missing break (Coverity). 2011-05-02 12:37:25 +02:00
Henri Verbeet 1c1de920e3 wined3d: Remove COM from the surface implementation. 2011-04-29 16:52:13 +02:00
Stefan Dösinger 96b758f7b3 d3d: Map D3DRS_ZBIAS to WINED3DRS_DEPTHBIAS.
ZBIAS was removed in d3d9 and replaced with DEPTHBIAS. Currently
wined3d implements both independently which will cause trouble if we
want to set the depthbias value depending on the depth stencil format.
2011-04-22 17:51:29 +02:00
Henri Verbeet ac95c302ff ddraw: Replace the light list with a standard Wine list. 2011-04-22 10:43:57 +02:00
Henri Verbeet 03b388609d ddraw: Destroy the ddraw surface after the wined3d texture is destroyed. 2011-04-21 16:53:42 +02:00
Henri Verbeet 6ff226f502 ddraw: Destroy the ddraw surface after the wined3d surface is destroyed. 2011-04-21 16:53:41 +02:00
Henri Verbeet cbf78c5d49 ddraw: Release the wined3d surface first in ddraw_surface_destroy(). 2011-04-21 16:53:41 +02:00
Henri Verbeet 25c0941e50 ddraw: Add a separate function for surface cleanup. 2011-04-21 16:53:41 +02:00
Henri Verbeet fd1aac3e75 ddraw: Replace the viewport list with a standard Wine list. 2011-04-20 13:07:00 +02:00
Henri Verbeet f1de9ad621 ddraw: Unset the viewports active device in IDirect3DDeviceImpl_3_DeleteViewport(). 2011-04-20 13:06:49 +02:00
Henri Verbeet 5492560cb5 ddraw: Introduce a separate function for texture creation. 2011-04-20 13:06:45 +02:00
Henri Verbeet 2b1b5dba43 ddraw: Don't bother unsetting resources on surface destruction.
Uninit3D() / stateblock destruction already takes care of this.
2011-04-20 13:06:40 +02:00
Henri Verbeet d429aaa9e9 ddraw: Verify the viewport belongs to the device on execute buffer execution. 2011-04-19 13:29:42 +02:00
Henri Verbeet 9edeb22c34 ddraw: Verify the viewport belongs to the device in IDirect3DDeviceImpl_3_SetCurrentViewport(). 2011-04-19 13:29:39 +02:00
Henri Verbeet 2c450571e5 wined3d: Remove COM from the volume implementation. 2011-04-15 10:07:57 +02:00
Henri Verbeet 3ec19590d5 wined3d: Remove COM from the swapchain implementation. 2011-04-14 17:13:57 +02:00
Henri Verbeet d2e665230a wined3d: Get rid of the swapchain destroy callback. 2011-04-13 14:13:51 +02:00
Henri Verbeet dd2c7d0d8c wined3d: Don't free D3D swapchains until the wined3d swapchain is destroyed.
This will allow us the get rid of the swapchain refcounting hacks in d3d9 in
particular. This is similar to the way we handle resources that are still in
use by a stateblock, but aren't referenced anywhere by the application.
2011-04-08 14:40:48 +02:00
Henri Verbeet 358f14ee20 ddraw: Fix a typo in a comment. 2011-04-04 11:53:39 +02:00
Henri Verbeet 024b5c2245 ddraw: Do not unset the index buffer on D3D device destruction. 2011-04-04 11:53:35 +02:00
Henri Verbeet 973b56dc1c ddraw: Get rid of the unused LoadWineD3D() declaration. 2011-04-04 11:53:27 +02:00
Henri Verbeet fd8e18bd2b wined3d: Remove COM from the texture implementation. 2011-03-28 17:08:52 +02:00
Henri Verbeet b8c40f3a7e wined3d: Get rid of IWineD3DCubeTexture. 2011-03-18 15:59:04 +01:00
Henri Verbeet f1ec3820d7 wined3d: Get rid of IWineD3DTexture. 2011-03-17 10:40:52 +01:00
Henri Verbeet adb1e10979 wined3d: Get rid of wined3d_buffer_get_desc(). 2011-03-11 11:40:47 +01:00
Henri Verbeet 2b18192e7a wined3d: Get rid of IWineD3DSurface::GetDesc(). 2011-03-11 11:40:31 +01:00
Henri Verbeet 4fd03150f6 wined3d: Get rid of IWineD3DBaseTexture::GetSubResourceDesc(). 2011-03-10 12:53:13 +01:00
Henri Verbeet 63b72d789d wined3d: Move the GetLevelDesc() functions to the IWineD3DBaseTexture interface. 2011-03-09 12:29:04 +01:00
Henri Verbeet 756fdb7c5a wined3d: Merge the various resource desc structures. 2011-03-09 12:28:58 +01:00
Henri Verbeet 015ad93d47 ddraw: Just pass NULL as swapchain parent.
The swapchain was the last place using IParent, so this allows us to kill
IParent completely.
2011-03-08 12:28:20 +01:00
Henri Verbeet b9fae5e9a8 wined3d: Don't require container parents for IWineD3DDeviceParent methods to be COM objects. 2011-03-08 12:27:41 +01:00
Henri Verbeet a27ee75ed2 wined3d: Remove COM from the buffer implementation. 2011-03-04 16:25:58 +01:00
Henri Verbeet b7c427b483 ddraw: Just pass NULL as index buffer parent.
Since the parent is just an opaque pointer instead of a COM object now, it can
just be NULL instead of needing IParent hacks.
2011-03-04 16:25:58 +01:00
Austin English 46f0538ae0 ddraw: Fix unused variable warnings (LLVM/Clang). 2011-02-07 10:13:52 -06:00
Henri Verbeet 304d713860 wined3d: Remove COM from the clipper implementation. 2011-02-04 15:25:31 +01:00
Henri Verbeet 5963483fc2 wined3d: Remove COM from the palette. 2011-02-03 13:15:17 +01:00
Henri Verbeet 5765632d9f wined3d: Remove COM from the vertex declaration. 2011-02-03 13:15:17 +01:00
Henri Verbeet 36d4268e3c wined3d: Remove COM from IWineD3D. 2011-02-02 12:22:42 +01:00
Henri Verbeet 4b109ff1f8 wined3d: Remove COM from the stateblock. 2011-01-31 12:24:58 +01:00
Henri Verbeet 8872239088 ddraw: Link directly to wined3d. 2011-01-28 11:59:02 +01:00
Michael Stefaniuc 68d5d33e5e ddraw: COM cleanup for the IClassFactory iface. 2011-01-24 14:43:23 +01:00
Michael Stefaniuc 15dfe304bf ddraw: Drop "Thunk_" from the names of the IDirect3DVertexBuffer methods. 2011-01-21 12:25:18 +01:00
Michael Stefaniuc da0186798d ddraw: Drop "Thunk_" from the names of the IDirect3DMaterial* methods. 2011-01-21 12:25:14 +01:00
Michael Stefaniuc 4a2ac6c8bd ddraw: Drop "Thunk_" from the names of the IDirect3DDevice3 methods. 2011-01-20 12:22:16 +01:00
Michael Stefaniuc 120678c261 ddraw: Drop "Thunk_" from the names of the IDirect3DDevice2 methods. 2011-01-20 12:22:10 +01:00
Michael Stefaniuc f4acb9bb53 ddraw: Drop "Thunk_" from the names of the IDirect3DDevice methods. 2011-01-20 12:22:04 +01:00
Henri Verbeet 93f1c49ea4 ddraw: Initialize the AutoRestoreDisplayMode field of WINED3DPRESENT_PARAMETERS (Valgrind). 2011-01-20 12:18:50 +01:00
Michael Stefaniuc 9745108096 ddraw: COM cleanup for the IDirectDraw7 iface. 2011-01-19 12:32:06 +01:00
Michael Stefaniuc cd8c18e83c ddraw: COM cleanup for the IDirectDraw4 iface. 2011-01-19 12:32:00 +01:00
Michael Stefaniuc 30a07d8371 ddraw: COM cleanup for the IDirectDraw3 iface. 2011-01-19 12:31:54 +01:00
Michael Stefaniuc 4202f09100 ddraw: COM cleanup for the IDirectDraw2 iface. 2011-01-19 12:31:45 +01:00
Michael Stefaniuc a59347fcd2 ddraw: COM cleanup for the IDirectDraw iface. 2011-01-19 12:31:12 +01:00
Michael Stefaniuc 497944f2bd ddraw: COM cleanup for the IDirect3D7 iface. 2011-01-19 12:31:04 +01:00
Michael Stefaniuc 97f9b02a26 ddraw: COM cleanup for the IDirect3D3 iface. 2011-01-19 12:30:58 +01:00
Michael Stefaniuc 2b80213578 ddraw: COM cleanup for the IDirect3D2 iface. 2011-01-18 13:29:59 +01:00
Michael Stefaniuc 8255d464db ddraw: COM cleanup for the IDirect3D iface. 2011-01-18 13:29:58 +01:00
Michael Stefaniuc 055c5e205a ddraw: Pass an IDirectDrawImpl* instead of an iface to CreateSurface(). 2011-01-18 13:29:58 +01:00
Michael Stefaniuc 0b362f6fa4 ddraw: Pass an IDirectDrawImpl* instead of an iface to ddraw_set_display_mode(). 2011-01-18 13:29:58 +01:00
Michael Stefaniuc b3ced2fa8a ddraw: Avoid some unsafe IDirect3D7 iface to IDirectDrawImpl transitions. 2011-01-18 13:29:57 +01:00
Greg Geldorp 1e7c80ba9a ddraw/tests: Remove some outdated tests. 2011-01-14 18:26:20 +01:00
Alexandre Julliard 4da54d93e1 ddraw: Convert dll registration to the IRegistrar mechanism. 2010-12-07 12:54:12 +01:00
Alexandre Julliard 5f49129e03 resources: Define a generic mechanism for adding extra values to the common version block. 2010-12-03 14:53:59 +01:00
Henri Verbeet 8c2416941e ddraw/tests: Fix a typo. 2010-11-30 10:56:57 +01:00
Henri Verbeet 63316d0967 ddraw: Return DDERR_INVALIDPARAMS for 0 width / height surface creation. 2010-11-18 12:37:49 +01:00
Henri Verbeet d3e2e84feb ddraw/tests: Fix some failure messages. 2010-11-17 14:01:15 +01:00
Henri Verbeet 7a354177b3 wined3d: Don't unregister a window unless the window proc is what we expect it to be.
In particular, if we'd unregister a window when the application replaced our
window proc, but still forwards to us, we'd create a loop when we register
the same window again later.
2010-11-10 12:19:24 +01:00
Henri Verbeet 2b0684c56d ddraw: Make switching to/from fullscreen work more than once. 2010-11-10 12:19:09 +01:00
Henri Verbeet 6fcb33f59f ddraw: Window proc replacement depends on DDSCL_EXCLUSIVE, not DDSCL_FULLSCREEN. 2010-11-10 12:19:04 +01:00
Henri Verbeet 7e3985e1fe ddraw: Setup the device window in SetCooperativeLevel(). 2010-11-08 13:30:54 +01:00
Henri Verbeet feaf81f60d wined3d: Use SetWindowPos() to make the focus window active. 2010-11-05 17:15:37 +01:00
David Adam 7661e8986c ddraw: Exclusive mode is the corner case for SetCooperative, not the normal mode. 2010-11-04 12:23:07 +01:00
Henri Verbeet 4c4a414596 ddraw/tests: Check for multiple expected messages in test_wndproc(). 2010-11-04 12:12:33 +01:00
Henri Verbeet cb3a133b28 ddraw: Fix some TRACEs. 2010-11-02 13:17:01 +01:00
Francois Gouget 6fb3a0a032 ddraw/tests: Remove a space before a '\n'. 2010-11-02 13:16:09 +01:00
David Adam e5e150a4d6 ddraw: Add tests for SetCooperativeLevel with a NULL window. 2010-11-02 12:03:03 +01:00
Francois Gouget aa93d7b80d ddraw/tests: Fix compilation on systems that don't support nameless unions. 2010-11-02 12:03:03 +01:00
David Adam 94f74a7caf ddraw: Add tests for the foreground window set by SetCooperativeLevel. 2010-11-01 12:38:44 +01:00
Michael Stefaniuc 1fe54842e0 ddraw: Add missing unlock (Smatch). 2010-10-26 11:54:10 +02:00
Ričardas Barkauskas 78e4a096a3 ddraw: Surfaces with DDSCAPS_3DDEVICE and DDSCAPS_ZBUFFER can't be render targets. 2010-10-25 15:31:12 +02:00
Ričardas Barkauskas ff659522f6 ddraw: Fix DDSCAPS_3DDEVICE surfaces always setting DDSCAPS_VISIBLE. 2010-10-25 15:31:07 +02:00
Ričardas Barkauskas 7402761e21 ddraw/tests: Test some more caps combinations. 2010-10-25 15:31:02 +02:00
Ričardas Barkauskas c6bc9e01e3 ddraw/tests: Test if surface with DDSCAPS_ZBUFFER can be render target. 2010-10-25 15:30:51 +02:00
David Adam 0a90271d69 ddraw: SETFOCUSWINDOW lives independently of other flags. 2010-10-22 12:08:07 +02:00
David Adam f8690a6bda ddraw: Remove a useless function. 2010-10-21 16:18:05 +02:00
Henri Verbeet 70f4e66f84 wined3d: IWineD3DBuffer_Unmap() can't fail. 2010-10-15 16:19:54 +02:00
Henri Verbeet 95469309d6 wined3d: Consistently use Map/Unmap for mapping resources. 2010-10-14 17:54:52 +02:00
Henri Verbeet 4d19daaa71 ddraw: Use a linear filter in ddraw_surface7_Blt(). 2010-10-12 17:36:22 +02:00
David Adam a8740a4667 ddraw/test: Add more combination tests for SetCooperativeLevels. 2010-10-12 11:44:13 +02:00
Stefan Dösinger 3ea9024f55 ddraw: Handle WINED3DFMT_R16G16_SNORM. 2010-10-06 16:12:07 +02:00
Stefan Dösinger 7cfaf611d0 ddraw: Don't try to enumerate WINED3DFMT_R8G8B8A8_SNORM.
There is no ddraw equivalent for this format, as ddraw only supports 2
bump channels. Trying to enumerate this format will only lead to a
confusing (but correct) ERR message
2010-10-06 16:12:02 +02:00
Henri Verbeet 5fa84c56c3 ddraw: Remove another hack.
It breaks actual front buffer / back buffer flips.
2010-10-05 15:16:52 +02:00
Austin English b2a8b61dd5 ddraw/tests: Fix a few compiler warnings on clang. 2010-10-01 17:48:11 +02:00
Alexandre Julliard 730f01801f tests: Make some variables static. 2010-10-01 13:41:42 +02:00
Michael Stefaniuc ef104dc465 ddraw: Add missing unlock on an error path (Smatch). 2010-09-29 10:06:36 +02:00
Paul Vriens c0ff1aec03 ddraw: Pass the correct size to memset (Coccinelle). 2010-09-21 20:16:15 +02:00
Alexandre Julliard 81b8ee863e makefiles: Add a standard header for all makefiles to replace the common variable initializations. 2010-09-19 12:36:48 +02:00
Oldřich Jedlička a6c3d0d6ac ddraw: Add checking of SURFACEDESC type/nullness into CreateSurface methods. 2010-09-18 14:40:01 +02:00
Oldřich Jedlička bec3b7692d ddraw: Allow creating back buffer for DirectX 1 interfaces. 2010-09-16 13:38:03 -05:00
Oldřich Jedlička 7085a3f85b ddraw/tests: New attachment tests for 3D back buffers. 2010-09-14 13:34:21 -05:00
Rico Schüller e6d52c0c8b wined3d: Add argument check for Type to Get/SetTextureStageState(). 2010-09-14 13:32:00 -05:00
Henri Verbeet fd7c1cbf05 wined3d: IWineD3DBuffer_GetDesc() should never fail. 2010-09-14 09:43:22 -05:00
Henri Verbeet 50d3f8081e ddraw: Just pass FOURCC formats through to wined3d. 2010-09-08 13:32:05 +02:00
Henri Verbeet b1a385db11 ddraw: Remove some stray tabs. 2010-09-08 13:32:00 +02:00
Henri Verbeet 53183b4cf3 wined3d: IWineD3DSurface_GetDesc() should never fail. 2010-09-08 13:31:43 +02:00
Oldřich Jedlička 51332b7a03 ddraw/tests: New tests for CreateSurface for 3D DDSCAPS_BACKBUFFER. 2010-09-03 16:02:31 +02:00
Henri Verbeet 83ff5b5041 ddraw: Handle D3DRENDERSTATE_TEXTUREHANDLE and D3DRENDERSTATE_TEXTUREMAPBLEND in d3d7. 2010-09-03 11:05:35 +02:00
Henri Verbeet 6c4c351791 wined3d: Don't require wined3d object parents to be COM objects. 2010-09-01 14:01:02 +02:00
Henri Verbeet b84d1ce5f7 wined3d: Clippers don't need parents. 2010-09-01 14:00:56 +02:00
Henri Verbeet 2ef400901d wined3d: Devices don't need parents. 2010-09-01 12:40:07 +02:00
Henri Verbeet c568916f9e wined3d: Implicit depth/stencil surfaces don't have a container.
They're owned by the device instead of the swapchain.
2010-08-31 14:23:47 +02:00
Henri Verbeet 4005eb2a18 wined3d: Get rid of WINED3DRECT. 2010-08-31 14:23:47 +02:00
Oldřich Jedlička 964500a61a ddraw/tests: New visual back buffer flipping tests. 2010-08-26 17:21:09 +02:00
Francois Gouget e237369b09 ddraw: Remove WINAPI on static functions where not needed. 2010-08-25 11:56:15 +02:00
Henri Verbeet cc5271d1b7 wined3d: Rename WINED3DFORMAT to wined3d_format_id. 2010-08-24 12:25:01 +02:00
Henri Verbeet 9364f80b8c ddraw: Failing surface creation is not an internal error. 2010-08-23 12:05:16 +02:00
Henri Verbeet 866099765a ddraw: Attaching an already attached surface is not a FIXME.
According to the tests it should simply fail.
2010-08-23 12:05:08 +02:00
Henri Verbeet c3cdebcf44 ddraw: Make some lookup tables const. 2010-08-23 12:04:31 +02:00
Henri Verbeet 20a42b4c98 ddraw: Add / improve TRACEs. 2010-08-20 13:21:24 +02:00
Henri Verbeet 4378d4b31e ddraw: Add a separate function for surface initialization. 2010-08-20 13:21:24 +02:00
Henri Verbeet c87fd4a65c ddraw: Add a separate function for ddraw initialization. 2010-08-20 13:21:23 +02:00
Henri Verbeet 0e955daed2 ddraw: Add a separate function for vertex buffer initialization. 2010-08-20 13:21:23 +02:00
Henri Verbeet e2021722fc ddraw: Add a separate function for palette initialization. 2010-08-20 13:21:23 +02:00
Henri Verbeet 584cb331a9 ddraw: Add a separate function for execute buffer initialization. 2010-08-20 13:21:22 +02:00
Henri Verbeet a60c493986 ddraw: Add a separate function for device initialization. 2010-08-20 13:21:21 +02:00
Oldřich Jedlička e474eb81e0 ddraw/tests: Add test for bad size of surface caps in CreateSurface. 2010-08-19 12:01:57 +02:00
Henri Verbeet 4b84c5e5b7 ddraw: Add a separate function for clipper initialization. 2010-08-19 11:18:20 +02:00
Henri Verbeet 759fd517aa ddraw: Add a separate function for parent initialization. 2010-08-19 11:18:16 +02:00
Henri Verbeet 921bd1bf9a ddraw: Add a separate function for viewport initialization. 2010-08-19 11:18:12 +02:00
Henri Verbeet bf26c2c869 ddraw: Add a separate function for material initialization. 2010-08-19 11:17:57 +02:00
Henri Verbeet c892ed497c ddraw: Add a separate function for light initialization. 2010-08-19 11:17:48 +02:00
Henri Verbeet c5a14085d4 ddraw: Remove unused / redundant includes. 2010-08-19 11:17:41 +02:00
Henri Verbeet 407f78e9e1 ddraw: Merge texture.c into surface.c. 2010-08-19 11:17:29 +02:00
Henri Verbeet 3eba8b5d22 ddraw: Merge gamma.c into surface.c. 2010-08-19 11:17:15 +02:00
Henri Verbeet fee9c1f2b5 ddraw: Remove a useless viewport callback. 2010-08-18 09:41:01 +02:00
Henri Verbeet 14399f6130 ddraw: Remove a useless material callback. 2010-08-18 09:40:55 +02:00
Henri Verbeet 06a44abc19 ddraw: Remove useless light callbacks. 2010-08-18 09:40:32 +02:00
Henri Verbeet 8394f00661 ddraw: Merge direct3d.c into ddraw.c. 2010-08-18 09:40:29 +02:00
Michael Stefaniuc f55e2374a0 ddraw: Use FAILED instead of NOT SUCCEEDED. 2010-08-16 13:46:42 +02:00
Oldřich Jedlička 5c05b14167 ddraw/tests: New attachment/flipping tests for back buffers. 2010-08-04 12:27:11 +02:00
Oldřich Jedlička 109cb9fee4 ddraw/tests: New CreateSurface for DDSCAPS_BACKBUFFER tests. 2010-08-04 12:27:04 +02:00
Henri Verbeet 3ad82a82bb wined3d: The stateblock doesn't have a parent. 2010-07-30 11:36:03 +02:00
Henri Verbeet 51a315386e ddraw: Use a less offensive handle table implementation for surfaces. 2010-07-30 11:36:03 +02:00
Henri Verbeet 91193b6eec ddraw: Use a less offensive handle table implementation for stateblocks. 2010-07-30 11:36:02 +02:00
Henri Verbeet 941aeade01 ddraw: Use a less offensive handle table implementation for matrices. 2010-07-29 17:33:36 +02:00
Henri Verbeet 0cb4de4542 ddraw: Use a less offensive handle table implementation for materials. 2010-07-29 17:33:35 +02:00
Johan Gill 1fb67788b1 ddraw: Added a todo_wine test for SetCooperativeLevel. 2010-07-28 16:28:22 +02:00
Marcus Meissner a58f31dd27 ddraw: Tighten up checks in DuplicateSurface (Coverity). 2010-07-26 18:38:29 +02:00
Alexandre Julliard b86d515ed6 dlls: Remove explicit imports of kernel32 and ntdll. 2010-07-21 17:38:36 +02:00
Henri Verbeet ce8f6ecf6e ddraw: Merge the surface thunks into surface.c. 2010-07-20 13:13:04 +02:00
Henri Verbeet 6fb9ee0ee7 ddraw: Merge the ddraw thunks into ddraw.c.
Note how both ddraw 1 and ddraw 7 used the same IDirectDrawImpl_XXX naming
convention.
2010-07-20 13:13:04 +02:00
Henri Verbeet 1edda50c03 ddraw: The surface isn't allowed to be NULL in EnumSurfacesCallbackThunk() and EnumCallback(). 2010-07-19 14:49:07 +02:00
Henri Verbeet 5bf9dd902c ddraw: Get rid of some dead code. 2010-07-19 14:49:07 +02:00
Henri Verbeet f461b39b76 ddraw: Get rid of the useless "ddraw_owner" fields. 2010-07-19 14:49:07 +02:00
Henri Verbeet 16b3f17f87 ddraw: Avoid some forward declarations. 2010-07-19 14:49:07 +02:00
Andrew Nguyen 8b1c1edb6b ddraw/tests: Test IDirect3D::FindDevice HAL enumeration. 2010-07-19 14:48:54 +02:00
Andrew Nguyen 14744c44b1 ddraw: Don't permit the enumeration of the Direct3D reference device in IDirect3D1::FindDevice. 2010-07-19 14:41:33 +02:00
Andrew Nguyen d5c2a358b7 ddraw: Return a failure code in IDirectDrawSurfaceImpl::QueryInterface if IDirect3D7::CreateDevice fails. 2010-07-19 14:41:11 +02:00
Mikko Rasa f18cb4c2f4 ddraw: Grow index buffer as needed. 2010-06-30 16:19:13 +02:00
Henri Verbeet cf39adbaa2 ddraw: Avoid an integer overflow in IDirectDrawSurfaceImpl_BltFast().
Bug spotted by Iain Arnell, test by Iain Arnell.
2010-06-24 15:11:43 +02:00
Francois Gouget 7649c75b40 Assorted typo and spelling fixes. 2010-06-24 10:37:05 +02:00
Andrew Nguyen bdc29f83bc ddraw/tests: Add an observation regarding device color model criteria for IDirect3D3::FindDevice. 2010-06-22 11:47:39 +02:00
Andrew Nguyen eb9227015a ddraw: Allow the ddraw RGB device to be enumerated in IDirect3D3::FindDevice.
Partially based on a patch by David Adam.
2010-06-22 11:47:24 +02:00
Andrew Nguyen 10a076ad8d ddraw: Validate structure pointers and sizes in IDirect3D3::FindDevice. 2010-06-22 11:24:59 +02:00
Henri Verbeet e4a4065bbd ddraw: Register / unregister the ddraw window class from DllMain().
This avoids failing in DDRAW_Create() if a previous IDirectDrawImpl object
with the same pointer value was imporperly cleaned up. The improper cleanup is
of course the larger problem, but I don't believe that can be fixed without
making more invasive changes to ddraw.
2010-06-18 15:22:22 +02:00
Michael Stefaniuc 989e98202f ddraw: Remove redundant "not NULL" check of This (coccicheck). 2010-05-18 18:42:07 +02:00
Ričardas Barkauskas f97c995054 ddraw: Fix missing D3D misc caps. 2010-05-03 17:20:15 +02:00
Rico Schüller cef28bb3a2 ddraw: Change return to break in PixelFormat_WineD3DtoDD(). 2010-05-03 14:00:15 +02:00
Vincent Pelletier 40cd9a7ff0 ddraw: Fix discrepancy in alpha mask for WINED3DFMT_B2G3R3A8_UNORM. 2010-05-03 13:57:58 +02:00
Johan Gill 7c90c1a0b5 ddraw: Do not restore the display mode from inside SetCooperativeLevel. 2010-04-19 16:06:01 +02:00
Johan Gill 15b959fba7 ddraw/tests: Added todo_wine test to verify resizing of fullscreen windows. 2010-04-07 18:13:05 +02:00
Henri Verbeet f97a9e3c0f ddraw: Fix and clarify texture filter state mappings. 2010-04-06 11:48:59 +02:00
Henri Verbeet 1289842da3 wined3d: Move handling of the unimplemented WINED3DRS_STIPPLEPATTERN states to ddraw. 2010-04-02 10:36:06 +02:00
Henri Verbeet 2e5976a8c5 wined3d: Move handling of the unimplemented WINED3DRS_BORDERCOLOR state to ddraw. 2010-04-02 10:35:54 +02:00
Roderick Colenbrander 2930f84961 ddraw: Add some DirectDraw Blt tests. 2010-03-30 13:55:05 +02:00
Henri Verbeet 914c8cb8ea ddraw: Acquire/release the focus window from the correct location. 2010-03-18 10:24:15 +01:00
Stefan Dösinger b5ddd6f0fc ddraw: Use a D24X8 depth buffer. 2010-03-17 16:08:48 +01:00
Henri Verbeet 89fef0e669 ddraw: Fix IDirectDraw4Impl_GetSurfaceFromDC().
Perhaps interesting to note is that this returns an IDirectDrawSurface instead
of an IDirectDrawSurface4.
2010-03-17 10:06:29 +01:00
Henri Verbeet 4e48ae2629 ddraw: Implement IDirectDrawImpl_GetSurfaceFromDC().
This is a pretty naive implementation, should that become a performance
problem it's easy enough to speed up with a search tree of some kind.
2010-03-17 10:06:25 +01:00
Alexandre Julliard bef5645eb1 makefiles: Remove the no longer needed explicit separators for dependencies. 2010-03-16 13:28:19 +01:00
Henri Verbeet ae437ab5b8 ddraw: Print unhandled vertex processing flags in IDirect3DExecuteBufferImpl_Execute(). 2010-03-15 15:55:14 +01:00
Michael Stefaniuc 67a2751b94 ddraw: Remove redundant memset. 2010-03-15 13:28:24 +01:00
Christian Costa 2e48bdd144 ddraw/tests: Fix typos. 2010-03-01 12:05:53 +01:00
Alexandre Julliard 6164ce2d82 makefiles: Use the standard C_SRCS variable as the list of test files.
This enables it to be auto-updated by make_makefiles.
2010-02-22 10:47:11 +01:00
Paul Vriens 22fc1fe366 ddraw/tests: Fix a test failure on VMware and VirtualBox on W2K and below. 2010-02-15 16:09:31 +01:00
Christian Costa e0213af9ab ddraw: Enable GetViewport to retreive data set by SetViewport2 and vice-versa + tests. 2010-02-15 12:51:23 +01:00
Christian Costa 720aa5bf23 ddraw: Fix D3DTBLEND_MODULATE emulation.
Alpha source should be selected with WINED3DTSS_ALPHAOP and not by changing the source itself.
2010-02-15 12:51:09 +01:00
Stefan Dösinger bb035638d0 d3d: Make sure vertexbuffer lock doesn't return a NULL pointer. 2010-02-09 11:33:53 +01:00
Alexandre Julliard 6d1ba98f5b ddraw/tests: Fix a test that fails on Win2k. 2010-02-05 11:54:51 +01:00
Stefan Dösinger a9f969094c ddraw: Convert VB lock flags to wined3d flags. 2010-01-29 14:59:02 +01:00
Stefan Dösinger f0266ee519 ddraw: Test invalid buffer lock parameters. 2010-01-29 14:59:02 +01:00
Henri Verbeet 69861cf873 wined3d: Get rid of the depth range hack. 2010-01-27 11:16:07 +01:00
Henri Verbeet ec03d3e4f1 ddraw: Add depth clamp tests. 2010-01-27 11:15:58 +01:00
Michael Stefaniuc a0789f611d ddraw: Simplify DllCanUnloadNow(). 2010-01-14 09:03:58 -06:00
Henri Verbeet 9ae92661cc ddraw: Remove a redundant return. 2009-12-30 13:31:30 +01:00
Henri Verbeet 67cba48782 wined3d: The FVF parameter to IWineD3DDeviceImpl_CreateVertexBuffer() is unused now. 2009-12-30 13:31:20 +01:00
Christian Costa df9bddcd27 ddraw: Improve error message. 2009-12-23 14:27:30 +01:00
Luke Benstead 34e82e3dbd ddraw: Fix an incorrect refcount test. 2009-12-18 11:39:48 +01:00
Henri Verbeet aa305c4a24 ddraw: Don't depend on IWineD3DDevice_CreateSurface() not touching the surface parameter on failure.
The reason it actually fails is because of ddraw trying to create surface of
type "SURFACE_UNKNOWN". Stefan should have a patch for that.
2009-12-18 11:38:30 +01:00
Roderick Colenbrander 6d8c4572ef wined3d: Fix a bug in BtlFast which was uncovered by the 32-bit dibsection support. 2009-12-17 12:53:19 +01:00
Henri Verbeet e79a6b20d2 ddraw/tests: Add tests for ddraw window proc handling. 2009-12-17 12:43:05 +01:00
Nicolas Le Cam bf64bbd1fb ddraw/tests: Get rid of a carriage return in a trace. 2009-12-14 12:04:06 +01:00
Paul Vriens 0f0d92bf13 ddraw/tests: Fix some test failures on Vista+. 2009-12-10 15:01:06 +01:00
Henri Verbeet ddddc60eb9 ddraw: Avoid enumerating display modes for formats that arent't supported anyway.
Some of these formats can't even be translated by ddraw.
2009-12-10 11:54:22 +01:00
Henri Verbeet 55f3c576d9 wined3d: Remove the effetively unused "state" field from the device. 2009-11-18 11:16:54 +01:00
Austin Lund 38d44e0a52 ddraw/tests: Fix test failure for D3DFMT_A2R10G10B10 pixel format in GetDC tests. 2009-11-17 15:14:56 +01:00
Paul Vriens 8a1f0eed8e ddraw/tests: Fix a test failure on systems with no DirectDraw7. 2009-11-03 21:26:46 +01:00
Stefan Dösinger d4275e87f1 wined3d: Add a usage flag for static buffer declarations. 2009-11-03 21:21:55 +01:00
Stefan Dösinger 90e443758a wined3d: Add a parameter for SetRenderTarget viewport setup. 2009-11-03 21:21:30 +01:00
Markus Stockhausen f222a1654e ddraw: Avoid memory overwrite in GetDeviceIdentifier(). 2009-10-30 16:32:53 +01:00
Henri Verbeet bf10dbe8a6 wined3d: Map D3DFMT_D24S8 to WINED3DFMT_D24_UNORM_S8_UINT.
The internal order of the depth and stencil bits is unspecified since the
format isn't lockable.
2009-10-30 11:28:52 +01:00
Henri Verbeet 052d955567 wined3d: Don't depend on uninitialized data in the CreateSurface() thunks (Valgrind).
Perhaps IDirectDraw7_CreateSurface() should also always set "pSurface7" to
NULL on failure, but at least for our internal functions that's a silly thing
to rely on.
2009-10-29 13:09:45 +01:00
Paul Vriens e1bf800ba5 ddraw/tests: Fix a test failure on Win9x/WinMe. 2009-10-21 16:05:57 +02:00
Francois Gouget 323f163af4 ddraw/tests: Fix compilation on systems that don't support nameless unions. 2009-10-19 14:45:21 +02:00
Henri Verbeet 02772641b2 ddraw/tests: Remove some leftover debug code. 2009-10-19 11:45:36 +02:00
Henri Verbeet c45609f15c ddraw/tests: Check some more return values (LLVM/Clang). 2009-10-16 13:37:00 +02:00
Christian Costa e95ffacde0 ddraw: Make SetColorKey handle case where dwColorSpaceHighValue < dwColorSpaceLowValue + tests. 2009-10-15 12:06:22 +02:00
Stefan Dösinger e80144c403 d3d: Make EndScene calls hookable. 2009-10-14 12:21:06 +02:00
Stefan Dösinger 64367542d0 ddraw: Make directdraw create functions hookable. 2009-10-14 12:21:06 +02:00
Paul Vriens 72fab20ffe ddraw/tests: Don't crash on older ddraw. 2009-10-12 12:14:03 +02:00
Andrew Nguyen 7211f7ce18 ddraw: Implement and test DirectDrawEnumerateExW. 2009-10-09 11:50:28 +02:00
Andrew Nguyen 3496fe5f43 ddraw: More fully implement and test DirectDrawEnumerateExA. 2009-10-09 11:50:28 +02:00
Andrew Nguyen bab8f7e557 ddraw: Implement and test DirectDrawEnumerateW. 2009-10-09 11:50:14 +02:00
Andrew Nguyen 4c61c2ff63 ddraw: Simplify and test DirectDrawEnumerateA. 2009-10-09 11:40:16 +02:00
Andrew Nguyen 611fae610c ddraw/tests: Remove a superfluous return statement. 2009-10-09 11:40:07 +02:00
Paul Vriens ddd255cb08 ddraw/tests: Fix some test failures on WinME/VMware. 2009-10-08 12:17:30 +02:00
Stefan Dösinger 9e068a33b3 wined3d: SetRenderTarget doesn't change the viewport in d3d7. 2009-10-02 15:06:56 +02:00
Markus Stockhausen dbb29993db ddraw: Set dwBackBufferCount=0 in CreateSurface for backbuffer. 2009-09-29 16:06:47 +02:00
Henri Verbeet 33bfcdd044 ddraw: The ddraw surface is now always the wined3d surface's parent.
This GetParent() trick would now cause infinite recursion.
2009-09-25 15:15:55 +02:00
Henri Verbeet 47c84f4f7f wined3d: Use the DXGI naming convention for all formats. 2009-09-25 15:15:44 +02:00
Henri Verbeet 60e32659a7 wined3d: Rename IWineD3DDevice::SetIndices() to IWineD3DDevice::SetIndexBuffer(). 2009-09-25 15:14:44 +02:00
Henri Verbeet 66a7236590 wined3d: Don't free D3D vertex declarations until the wined3d vertex declaration is destroyed. 2009-09-23 12:36:28 +02:00
Henri Verbeet 93b0600829 wined3d: Don't free D3D buffers until the wined3d buffer is destroyed. 2009-09-18 08:55:25 -05:00
Henri Verbeet a8e8f763bf wined3d: Don't free D3D textures until the wined3d texture is destroyed. 2009-09-18 08:54:34 -05:00
Henri Verbeet 6c8636c337 ddraw: Mark internal symbols hidden. 2009-09-17 10:10:04 -05:00
Henri Verbeet de3bd86fb6 wined3d: Don't free D3D cube textures until the wined3d cube texture is destroyed. 2009-09-17 10:09:44 -05:00
Henri Verbeet a5214c306f wined3d: Don't free D3D surfaces until the wined3d surface is destroyed.
This prevents for example a d3d9 depth stencil from being destroyed when it
has no external references but is still in use by the device/stateblock. A
nice side effect is that it simplifies handling of "implicit" surfaces like
the frontbuffer and backbuffers, as well as the forwarding of reference counts
for surfaces that are part of a texture.
2009-09-16 13:04:32 -05:00
Jörg Höhle 3eb62ed62c ddraw: Complete recognition of pixelformat 19: X8L8V8U8. 2009-09-15 16:41:24 -05:00
Henri Verbeet 2b2fc827ce wined3d: Remove unused parameters to drawPrimitive(). 2009-09-11 12:09:14 +02:00
Stefan Dösinger e1469961d4 wined3d: Test and fix ddraw and d3d9 GetDC differences.
The MSDN is not totally correct: A8R8G8B8 and A1R5G5B5 also allow GetDC. The
main differences that have to be filtered out in d3d9.dll are GetDC on
A8B8G8R8, X8B8G8R8 and P8.
2009-09-08 13:04:52 +02:00
Henri Verbeet ee60e5fd71 ddraw: Remove trailing spaces. 2009-09-01 14:06:03 +02:00
Francois Gouget e168876d8f ddraw/tests: Fix compilation on systems that don't support nameless unions. 2009-08-31 12:41:21 +02:00
Stefan Dösinger c0892c2f35 ddraw: d3d7 does not support two sided stencil.
The header is wrong. There is simply no API to set this. The MS header does
not have this declaration either.
2009-08-06 17:26:31 +02:00
Henri Verbeet 7165bd19c1 wined3d: WINED3DTEXF_NONE only makes sense as a mip filter. 2009-08-05 11:20:43 +02:00
Andrew Talbot 99139d9671 ddraw: Constify some variables. 2009-07-24 11:44:17 +02:00
Alexandre Julliard 60d389670a ddraw/tests: Properly release surfaces even if we can't get the texture object. 2009-07-14 11:29:47 +02:00
Alexandre Julliard 340f5734bf ddraw/tests: Fix a failing test on 64-bit. 2009-07-14 11:29:47 +02:00
Alexandre Julliard 5622f74486 ddraw/tests: Fix a few tests that fail on Win64. 2009-07-10 20:52:41 +02:00
Gerald Pfeifer d1e5b3bf62 ddraw: Fix two bounds checks. 2009-06-22 11:44:19 +02:00
Gerald Pfeifer 3176d936f9 ddraw: Fix error checking in IDirect3DExecuteBufferImpl_Execute(). 2009-06-22 11:44:06 +02:00
Marcus Meissner 882716e78b ddraw: Use correct union member. 2009-06-15 13:42:30 +02:00
Henri Verbeet 88162fabb8 wined3d: Get rid of the pointers in WINED3DSURFACE_DESC. 2009-06-15 13:42:29 +02:00
Henri Verbeet 4bc6b376e0 wined3d: Remove the useless "resource_type" parameter from IWineD3DDevice::CreateSurface(). 2009-06-12 17:33:15 +02:00
Luke Benstead 73abda63d7 ddraw: Add tests for DirectDrawSurface reference counting. 2009-05-20 11:09:07 +02:00
Francois Gouget 82b7fc6855 ddraw/tests: Replace malloc() with HeapAlloc(). 2009-05-13 12:45:36 +02:00
Nicolas Le Cam ad66aa77a4 ddraw/tests: Fix a test failure on VirtualBox. 2009-05-04 12:51:15 +02:00
Henri Verbeet 6f33b97c94 wined3d: Get rid of the shared_handle parameter.
I don't expect us to support this in the near future, and right now it's just
dead code.
2009-04-23 14:22:06 +02:00
Christian Costa 06d2b30903 ddraw/tests: Add tests for refcount handling of light with viewport. 2009-04-21 16:30:36 +02:00
Christian Costa ffb5f749d5 ddraw: Handle refcount of lights when interacting with viewport. 2009-04-21 16:30:32 +02:00