Commit Graph

1699 Commits

Author SHA1 Message Date
Henri Verbeet dfa7e9b563 ddraw/tests: Add some tests to show that we should maintain D3D state across cooperative level chnages. 2012-01-18 12:37:38 +01:00
Henri Verbeet 1acd8278c8 ddraw/tests: Add a border around the blitted source data in test_clipper_blt().
Some drivers use the neighbouring pixels in the interpolation. You can
probably argue about whether that's right or wrong, but it's really not what
we're trying to test in either case.
2012-01-18 12:37:38 +01:00
Henri Verbeet cf636cc3b3 ddraw: Allow querying the surface interface if a device was created from a surface. 2012-01-18 12:37:38 +01:00
Henri Verbeet e70990041b wined3d: Get rid of the WINED3DTEXTUREFILTERTYPE typedef. 2012-01-13 17:34:31 +01:00
Henri Verbeet a44b062aed wined3d: Get rid of the WINED3DCUBEMAP_FACES typedef. 2012-01-13 17:34:31 +01:00
Henri Verbeet afb64506ba ddraw: Implement width and height changes in ddraw_surface7_SetSurfaceDesc(). 2012-01-13 17:34:30 +01:00
Henri Verbeet f38e94af7c wined3d: Get rid of the WINED3DTRANSFORMSTATETYPE typedef. 2012-01-12 12:37:18 +01:00
Henri Verbeet d6dfb7914a ddraw/tests: Fix some surface locking calls.
In ddraw7 DDLOCK_WAIT is the default behaviour, in earlier versions it's
DDLOCK_DONOTWAIT.
2012-01-12 12:37:09 +01:00
Henri Verbeet b6431d9493 wined3d: Get rid of the WINED3DTEXTUREOP typedef. 2012-01-11 17:47:22 +01:00
Henri Verbeet 43fcbcb36e wined3d: Get rid of the WINED3DTEXTURESTAGESTATETYPE typedef. 2012-01-10 10:47:27 +01:00
Henri Verbeet 1ef86ad596 ddraw: Properly clear the clip list if ddraw_clipper_SetClipList() is called with NULL region data. 2012-01-10 10:47:13 +01:00
Henri Verbeet e2765579bc ddraw/tests: Add tests for clippers with a destroyed window. 2012-01-10 10:47:04 +01:00
Francois Gouget daeb4d6d29 ddraw: Make ddraw_reset_enum_callback() and ddraw_surface_destroy() static. 2012-01-09 12:52:11 +01:00
Francois Gouget adcd8637ac ddraw/tests: Fix compilation on systems that don't support nameless unions. 2012-01-09 12:52:10 +01:00
Henri Verbeet 9a8491045e wined3d: Get rid of the WINED3DMULTISAMPLE_TYPE typedef. 2012-01-09 12:22:17 +01:00
Henri Verbeet 08545dc739 wined3d: Get rid of the WINED3DSAMPLERSTATETYPE typedef. 2012-01-09 12:22:12 +01:00
Henri Verbeet 01992d7fb5 ddraw: Don't leak the window region if we have an extra clip rect in ddraw_clipper_GetClipList(). 2012-01-09 12:21:59 +01:00
Henri Verbeet 3d33887c2f wined3d: Get rid of the WINED3DSWAPEFFECT typedef. 2012-01-06 19:24:22 +01:00
Henri Verbeet 31f3120815 ddraw: Convert to integer before adjusting the clipped source rect.
This makes a difference for the bottom and right edges, and we could end up
with an empty source rectangle otherwise.
2012-01-06 19:24:20 +01:00
Henri Verbeet f17e714857 ddraw: Implement IDirectDrawClipper::SetClipList(). 2012-01-06 19:24:20 +01:00
Henri Verbeet 3e9fe3e938 ddraw: Use the window's client rect for clipping. 2012-01-06 19:24:19 +01:00
Henri Verbeet 223b0736c0 ddraw: Disallow clipped blits in ddraw_surface7_BltFast(). 2012-01-05 20:54:21 +01:00
Henri Verbeet 99e5e3ac0d ddraw: Refuse to set a clip list if a clipper is already tracking a window. 2012-01-05 20:54:19 +01:00
Henri Verbeet 3997457574 ddraw/tests: Add some clipper tests. 2012-01-05 20:54:17 +01:00
André Hentschel b5ba054ce8 Assorted header comment cleanup. 2012-01-04 19:35:13 +01:00
Michael Stefaniuc f1f5536d8f ddraw: Fix two memory leaks (Smatch). 2012-01-03 12:37:58 +01:00
Henri Verbeet 387a5f632c ddraw: Fix the title and class name for the auto ddraw device window. 2011-12-23 13:44:26 +01:00
Henri Verbeet 3e6313050b ddraw: Handle the special DDSCL_SETFOCUSWINDOW | DDSCL_CREATEDEVICEWINDOW combination. 2011-12-23 13:44:19 +01:00
Henri Verbeet d8153e5364 ddraw: Properly handle DDSCL_CREATEDEVICEWINDOW. 2011-12-23 13:44:12 +01:00
Henri Verbeet a5af10e12b ddraw: Clear the focus and device windows on DDSCL_NORMAL. 2011-12-23 13:44:07 +01:00
Henri Verbeet 2ec0c7bfdc ddraw: DDSCL_CREATEDEVICEWINDOW requires DDSCL_EXCLUSIVE. 2011-12-23 13:44:00 +01:00
Henri Verbeet 00096c82fd wined3d: Get rid of the WINED3DZBUFFERTYPE typedef. 2011-12-22 10:08:48 +01:00
Henri Verbeet 654d53fa5f ddraw/tests: Add some tests for DDSCL_CREATEDEVICEWINDOW. 2011-12-22 10:08:45 +01:00
Henri Verbeet fe4e2bf60e ddraw/tests: Fix a couple of test messages. 2011-12-22 10:08:07 +01:00
Henri Verbeet 4a30db74b1 ddraw: Handle the Direct3D clipspace transformation.
Direct3D3 and earlier have an extra transformation to scale clipspace. It's
controlled by the extra viewport parameters in those versions.
2011-12-22 10:07:59 +01:00
Henri Verbeet 3082c1a9de wined3d: Get rid of the WINED3DRENDERSTATETYPE typedef. 2011-12-20 10:11:47 +01:00
Henri Verbeet 5c3ba123de ddraw/tests: Move the Direct3D7 ProcessVertices() test to ddraw7.c. 2011-12-20 10:11:36 +01:00
Henri Verbeet 7cdfa40156 ddraw/tests: Add a ProcessVertices() test for Direct3D3. 2011-12-20 10:11:24 +01:00
Henri Verbeet cb8f26be02 ddraw/tests: Remove some error checking from ProcessVerticesTest(). 2011-12-20 10:10:39 +01:00
Henri Verbeet fb28e7f596 ddraw/tests: Introduce proper vector types. 2011-12-19 20:15:48 +01:00
Henri Verbeet bd09f63bff ddraw/tests: Remove a redundant IDirect3DDevice7_SetViewport() call. 2011-12-19 20:15:48 +01:00
Henri Verbeet 2db8688185 ddraw/tests: Introduce some functions for comparing floating-point vectors. 2011-12-19 20:15:48 +01:00
Henri Verbeet 67bca436ee wined3d: Get rid of the WINED3DDEVTYPE typedef. 2011-12-13 18:58:58 +01:00
Henri Verbeet ebb85da5f7 wined3d: Get rid of the WINEDDCAPS typedef. 2011-12-13 18:58:58 +01:00
Henri Verbeet 10d2a9375d ddraw: Add support for clipped blits. 2011-12-13 18:58:56 +01:00
Henri Verbeet e6fb4537f0 ddraw: Move clipper handling to ddraw. 2011-12-13 18:58:37 +01:00
Henri Verbeet 9d55388156 ddraw: Destroy the swapchain after the D3D device in DllMain(). 2011-12-12 10:20:41 +01:00
Stefan Dösinger 9cf25006ad ddraw/tests: Extend the CreateSurface(NULL test), use own function. 2011-12-08 18:04:29 +01:00
Stefan Dösinger 481e2f3366 ddraw: SetSurfaceDesc can set width, height and pitch under certain conditions. 2011-12-08 18:04:18 +01:00
Stefan Dösinger b2ca7e37f4 ddraw/tests: Make the SetSurfaceDesc test ok messages consistent. 2011-12-08 18:00:32 +01:00
Henri Verbeet 3dd03f642d wined3d: Get rid of the WINEDDCOLORKEY typedef. 2011-12-08 10:27:53 +01:00
Henri Verbeet 52231bc467 wined3d: Get rid of the WineDirect3DVertexStridedData typedef. 2011-12-08 10:27:50 +01:00
Henri Verbeet 4c3dfa1bca wined3d: Get rid of the WineDirect3DStridedData typedef. 2011-12-07 17:49:56 +01:00
Henri Verbeet 05acde9cd1 ddraw: Just read the actual reference counts in DestroyCallback(). 2011-12-07 17:49:55 +01:00
Henri Verbeet ecb2859d3c ddraw: Destroy the swapchain in the DllMain() cleanup handler.
This is mostly to make sure there aren't any resources still being referenced
by wined3d.
2011-12-07 17:49:55 +01:00
Stefan Dösinger 7ae81ba378 ddraw/tests: Add a IDirect3DDevice2 GetCaps test. 2011-12-06 17:07:15 +01:00
Henri Verbeet eafebc0491 wined3d: Get rid of the WINED3DLOCKED_RECT typedef. 2011-12-06 15:50:58 +01:00
Henri Verbeet 6523ef5f67 ddraw: Don't enumerate surfaces without references. 2011-12-06 15:50:58 +01:00
Stefan Dösinger ea151da3cd ddraw/tests: Update a copyright line. 2011-12-05 17:40:21 +01:00
Stefan Dösinger d4f504c698 ddraw/tests: Add a IDirect3DDevice7 GetCaps test. 2011-12-05 17:40:11 +01:00
Stefan Dösinger cc06d182fb ddraw: Size handling fixes for IDirect3DDevice::GetCaps. 2011-12-05 17:40:04 +01:00
Henri Verbeet 94c9b0b4fc wined3d: Get rid of the WINED3DPRESENT_PARAMETERS typedef. 2011-12-02 11:51:29 +01:00
Henri Verbeet 3a2921c559 ddraw: Keep the primary surface mapped at the same address for early ddraw versions. 2011-11-30 11:50:58 +01:00
Henri Verbeet 3430e11605 wined3d: Add a flags parameter to wined3d_surface_create(). 2011-11-30 11:50:48 +01:00
Henri Verbeet 82dd612d50 ddraw: Resize the swapchain window on mode changes in exclusive mode. 2011-11-30 11:50:42 +01:00
Henri Verbeet 22d41e2c3f ddraw: Rename the wineD3D field in IDirectDrawImpl to wined3d. 2011-11-29 13:23:00 +01:00
Henri Verbeet 0f10ac9358 ddraw: Create the wined3d swapchain when setting the cooperative level. 2011-11-29 13:22:54 +01:00
Henri Verbeet f41ea4fefe ddraw/tests: Add tests for primary dimensions to test_coop_level_mode_set(). 2011-11-28 16:40:47 +01:00
Henri Verbeet 376ffdf3d5 wined3d: Get rid of the WINED3DADAPTER_IDENTIFIER typedef. 2011-11-24 17:10:09 +01:00
Henri Verbeet bca0ec8182 ddraw: Fail surface creation if the cooperative level isn't set yet. 2011-11-24 17:09:57 +01:00
Henri Verbeet 21bd722c46 ddraw: Set the render target to the wined3d frontbuffer on D3D device cleanup.
We don't need any specific render target here, since without a D3D device we
can't do any rendering anyway. We just want to avoid pointing to something
that was free'd.
2011-11-24 17:09:48 +01:00
Henri Verbeet 74345201ad ddraw: Move setting ddraw->d3d_target out of ddraw_attach_d3d_device(). 2011-11-23 09:13:49 +01:00
Matteo Bruni ca83e14aba ddraw: Reorder formats in EnumTextureFormats. 2011-11-23 09:13:28 +01:00
Henri Verbeet 2e1c0d83c1 wined3d: Get rid of the WINED3DGAMMARAMP typedef. 2011-11-22 10:52:45 +01:00
Henri Verbeet be8917cd91 wined3d: Get rid of the WINED3DVIEWPORT typedef. 2011-11-22 10:52:40 +01:00
Francois Gouget 3315918eac ddraw/tests: Fix compilation on systems that don't support nameless unions. 2011-11-21 11:01:10 +01:00
Henri Verbeet 02bb70fc3b wined3d: Get rid of the WINED3DMATERIAL typedef. 2011-11-21 11:01:02 +01:00
Henri Verbeet f597359727 wined3d: Get rid of the WINED3DLIGHT typedef. 2011-11-21 11:00:57 +01:00
Henri Verbeet 37a0f7ad65 wined3d: Get rid of the WINED3DMATRIX typedef. 2011-11-18 14:26:16 +01:00
Henri Verbeet 8e6f5c34a2 ddraw: We can't render to the desktop window either. 2011-11-18 14:26:16 +01:00
Henri Verbeet 18a7653c78 wined3d: Get rid of the WINED3DDISPLAYMODE typedef. 2011-11-17 11:37:26 +01:00
Henri Verbeet e0a0d611af wined3d: Pass a wined3d_color struct to wined3d_device_clear(). 2011-11-16 09:41:53 +01:00
Stefan Dösinger 9e0baa55ce ddraw: Set correct HEL and HAL color models. 2011-11-15 19:37:28 +01:00
Stefan Dösinger c3d6061593 ddraw: Add more tests and fixes for SetSurfaceDesc. 2011-11-15 19:37:28 +01:00
Stefan Dösinger 460e35aace ddraw/tests: Mark a VMware failure broken. 2011-11-15 19:37:28 +01:00
Stefan Dösinger edfeec60b1 ddraw/tests: Add a YV12 blit test. 2011-11-14 15:25:24 +01:00
Stefan Dösinger a9c72d8772 ddraw/tests: Add a test for YV12 partial block locks and lock offsets. 2011-11-14 15:25:24 +01:00
Henri Verbeet a2963b662c ddraw: Use wined3d_mutex_lock() / wined3d_mutex_unlock() for locking. 2011-11-14 15:25:21 +01:00
Francois Gouget 82c3b84e40 ddraw/tests: Fix compilation on systems that don't support nameless unions. 2011-11-14 15:25:20 +01:00
Octavian Voicu 8a6a157074 ddraw: Make IDirectDrawClipperImpl_[GS]etHWnd function names consistent with SDK. 2011-11-09 17:51:28 +01:00
Stefan Dösinger 6a7c82186a ddraw/tests: Add a partial block lock test. 2011-11-08 18:19:16 +01:00
Octavian Voicu 0134df1973 ddraw/tests: Fix a couple of copy-paste typos in test messages. 2011-11-08 14:22:04 +01:00
Francois Gouget 9b7178e633 ddraw/tests: Fix compilation on systems that don't support nameless unions. 2011-11-07 11:32:57 +01:00
Octavian Voicu 6e75f68153 ddraw/tests: Add more attachment/detachment test cases. 2011-11-03 13:52:15 +01:00
Octavian Voicu 9776a3bae2 ddraw/tests: Use more common pixel formats and caps for attachment tests. 2011-11-03 13:52:15 +01:00
Octavian Voicu 6e7bb64950 ddraw/tests: Move surface attachment tests from refcount.c to dsurface.c. 2011-11-03 13:52:15 +01:00
Henri Verbeet fcf96b634a wined3d: Create the DIB section for DDSCAPS_OWNDC surfaces on initialization. 2011-10-31 23:52:51 +01:00
Henri Verbeet 1bf36a3f40 ddraw: Implement ddraw_surface7_BltFast() on top of wined3d_surface_blt(). 2011-10-31 16:46:19 +01:00
Henri Verbeet 5193f6704c ddraw: Implement copy_mipmap_chain() on top of wined3d_surface_blt(). 2011-10-31 16:46:19 +01:00
Henri Verbeet 38abddca68 ddraw: Only update primary_lock when we're actually locking the frontbuffer.
This fixes a regression introduced by commit
8330558e12.
2011-10-27 19:34:09 +02:00
Henri Verbeet d09ad48328 ddraw: Read/draw from/to the actual screen when there is no swapchain window. 2011-10-25 16:57:24 +02:00
Henri Verbeet 8330558e12 ddraw: Keep track of the affected rectangle for ddraw_surface_update_frontbuffer(). 2011-10-25 16:57:24 +02:00
Henri Verbeet 4408c5abc6 ddraw: Clear attached_iface before releasing it in ddraw_surface_delete_attached_surface().
Spotted by Dan Kegel / Valgrind.
2011-10-19 12:23:23 +02:00
Henri Verbeet 10b54a7860 ddraw: Initialize the surface desc's dwFlags field to 0 before surface locks.
Otherwise DDSD2_to_DDSD() would try to convert uninitialized data on failure.
Spotted by Dan Kegel / Valgrind.
2011-10-19 12:23:15 +02:00
Marcus Meissner b08d4f597a ddraw: Lowercase variable names to fix a incorrect sizeof() (Coverity). 2011-10-18 15:17:49 +02:00
Henri Verbeet 14ca56ed97 ddraw: Destroy the swapchain in ddraw_destroy() if it still exists. 2011-10-18 15:10:21 +02:00
Ričardas Barkauskas 472a8f7a67 ddraw: COM cleanup for IDirect3DDevice7 interface. 2011-10-17 18:24:58 +02:00
Ričardas Barkauskas 7dc08745d1 ddraw: Use impl_from_IDirect3DDevice7 for application provided interfaces. 2011-10-17 18:24:42 +02:00
Ričardas Barkauskas 31cf68dd95 ddraw: Use unsafe_impl_from_IDirect3DDevice7 for application provided interfaces. 2011-10-17 18:24:30 +02:00
Ričardas Barkauskas 6b7e3e77d0 ddraw: COM cleanup for IDirect3DDevice3 interface. 2011-10-17 18:24:21 +02:00
Ričardas Barkauskas bd530d3aba ddraw: Rename device_from_device3 to impl_from_IDirect3DDevice3. 2011-10-17 18:24:10 +02:00
Ričardas Barkauskas a90b2ad002 ddraw: Use unsafe_impl_from_IDirect3DDevice3 for application provided interfaces. 2011-10-17 18:23:51 +02:00
Ričardas Barkauskas d32df839ac ddraw: COM cleanup for IDirect3DDevice2 interface. 2011-10-17 18:23:42 +02:00
Ričardas Barkauskas 1c045cbb28 ddraw: Rename device_from_device2 to impl_from_IDirect3DDevice2. 2011-10-17 18:23:33 +02:00
Ričardas Barkauskas a870753dba ddraw: Use unsafe_impl_from_IDirect3DDevice2 for application provided interfaces. 2011-10-17 18:23:18 +02:00
Ričardas Barkauskas d5912c533f ddraw: COM cleanup for IDirect3DDevice interface. 2011-10-17 18:23:09 +02:00
Ričardas Barkauskas a0c9ab7894 ddraw: Rename device_from_device1 to impl_from_IDirect3DDevice. 2011-10-17 18:22:56 +02:00
Ričardas Barkauskas d19e416dee ddraw: Use unsafe_impl_from_IDirect3DDevice for application provided interfaces. 2011-10-17 18:22:44 +02:00
Octavian Voicu b44eef7085 ddraw: Keep track of interface attached by AddAttachedSurface and detach correct interface when parent is released. 2011-10-12 20:52:46 +02:00
Octavian Voicu a843acef55 ddraw: Be consistent about param and local var naming across AddAttachedSurface implementations. 2011-10-11 20:12:10 +02:00
Octavian Voicu 9cff895a69 ddraw/tests: Test detachment of attached surfaces on Release. 2011-10-11 20:12:06 +02:00
Stefan Dösinger 496b438ede wined3d: Remove d3d8/9 palette support. 2011-10-11 13:37:49 +02:00
Ričardas Barkauskas 38982ddf11 ddraw: Use unsafe_impl_from_IDirect3DViewport2 for application provided interfaces. 2011-10-04 15:25:31 -05:00
Ričardas Barkauskas 25bf0e914c ddraw: Use unsafe_impl_from_IDirect3DViewport for application provided interfaces. 2011-10-04 15:25:25 -05:00
Ričardas Barkauskas 6253d319cb ddraw: COM cleanup for IDirect3DViewport3 interface. 2011-10-04 15:25:20 -05:00
Ričardas Barkauskas 48668e9047 ddraw: Compare IDirect3DViewport3 interface instead of IDirect3DViewportImpl. 2011-10-04 15:25:13 -05:00
Ričardas Barkauskas 26be3c3000 ddraw: Use impl_from_IDirect3DViewport3 instead of cast to IDirect3DViewportImpl*. 2011-10-04 15:25:08 -05:00
Ričardas Barkauskas f44734b724 ddraw: Use unsafe_impl_from_IDirect3DViewport3 for application provided interfaces. 2011-10-04 15:25:00 -05:00
Ričardas Barkauskas f0354fde02 ddraw/tests: IDirect3DViewport3, IDirect3DViewport2 and IDirect3DViewport use same implementation. 2011-10-04 15:24:53 -05:00
Ričardas Barkauskas a6656468ef ddraw: COM cleanup for the IDirectDrawPalette interface. 2011-10-04 15:24:44 -05:00
Ričardas Barkauskas a8616b7fcb ddraw: Use unsafe_impl_from_IDirectDrawPalette for application provided interfaces. 2011-10-04 15:24:20 -05:00
Akihiro Sagawa f2044702fa ddraw: Use the same device name as Windows for the Direct3D HAL device. 2011-10-03 11:25:59 -05:00
Francois Gouget 3de330db54 tests: Remove unneeded assert.h includes. 2011-09-27 10:59:56 +02:00
Stefan Dösinger 35f2e91fcd ddraw/tests: Use the variable instead of the type in sizeof(). 2011-09-26 17:59:37 +02:00
Stefan Dösinger 6e0d056e9a ddraw/tests: Use sizeof instead of a magic number. 2011-09-26 17:59:34 +02:00
Henri Verbeet 4228bbc5bf ddraw: Store the wined3d swapchain reference in the ddraw object instead of the primary surface. 2011-09-20 16:21:38 +02:00
Henri Verbeet cc45316d02 ddraw: Setup swapchain dimensions and format using the current display mode in ddraw_create_swapchain(). 2011-09-20 16:21:38 +02:00
Stefan Dösinger f41513205c ddraw/tests: Accept another error when setting an overlay with a NULL rect. 2011-09-19 18:32:51 +02:00
Stefan Dösinger 95b7cda6be ddraw/tests: Mark a strange radeon X1600 Windows behavior broken. 2011-09-19 18:32:51 +02:00
Stefan Dösinger 81a9f19bac ddraw/tests: Remove the partial cube map load tests.
They BSOD my Radeon X1600 Windows machine.
2011-09-19 18:32:51 +02:00
Henri Verbeet 18840ff9d9 ddraw/tests: Add some tests for Initialize(). 2011-09-19 17:56:05 +02:00
Henri Verbeet ec04f80cf6 ddraw: Implement ddraw7_Initialize(). 2011-09-19 17:56:05 +02:00
Henri Verbeet feb96511a9 ddraw: Get rid of IDirectDraw3. 2011-09-19 17:56:05 +02:00
Stefan Dösinger eac78fd488 ddraw/tests: Add some slop to the fog tests. 2011-09-16 17:23:10 +02:00
Henri Verbeet b9fcf71c71 ddraw: Use real flips. 2011-09-16 17:23:08 +02:00
Henri Verbeet 1aeee59bd8 ddraw: Use offscreen backbuffers.
In principle this allows us to use more than one backbuffer in ddraw. It's
also a requirement for the next patch.
2011-09-16 17:23:08 +02:00
Henri Verbeet 5186882098 ddraw: Store the primary surface. 2011-09-16 17:23:08 +02:00
Stefan Dösinger e28041c9a6 ddraw/tests: Not all GPUs support dwZBufferBitDepth=24 on Windows. 2011-09-15 15:41:40 +02:00
Henri Verbeet b741cd02c3 ddraw: Get rid of some unused macros. 2011-09-15 15:41:40 +02:00
Henri Verbeet f60b54d952 ddraw: Get rid of the surfaces field in IDirectDrawImpl. 2011-09-15 15:41:40 +02:00