Commit Graph

1628 Commits

Author SHA1 Message Date
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
Henri Verbeet 5de020342c ddraw: Get rid of the unused "initialized" field in IDirectDrawImpl. 2011-09-14 09:59:12 +02:00
Henri Verbeet 8173e6f539 ddraw: Just use a static variable for vblank emulation. 2011-09-14 09:58:58 +02:00
Henri Verbeet 60f6c41a67 ddraw: Just use a static variable for scanline emulation.
Tracking it per ddraw object doesn't add much.
2011-09-14 09:58:53 +02:00
Francois Gouget 8973c20f7d Assorted spelling fixes. 2011-09-13 11:27:01 +02:00
Dan Kegel c5d45e8b88 ddraw/tests: Fix compilation on systems that don't support nameless unions. 2011-09-13 11:27:00 +02:00
Henri Verbeet f2115004d5 ddraw: Get rid of some ERRs in PixelFormat_DD2WineD3D().
Most of these would just be the result of the application giving us invalid
pixel formats.
2011-09-13 09:19:40 +02:00
Henri Verbeet be32dd86d6 ddraw: Get rid of an unused prototype. 2011-09-13 09:19:30 +02:00
Stefan Dösinger 081f39044f ddraw: Use a Z format suported by the driver in the visual test. 2011-09-12 10:10:20 +02:00
Stefan Dösinger 0cea17037c ddraw: Correct D3DFMT_R5G6B5 in a test. 2011-09-12 10:10:06 +02:00
Henri Verbeet b23809868a ddraw: Get the total amount of video memory from wined3d.
Instead of hoping that what's available at ddraw_init() time is the total.
2011-09-12 10:08:52 +02:00
Henri Verbeet aa5590b061 ddraw: Remove the unused "depthstencil" field from IDirectDrawImpl. 2011-09-12 10:08:43 +02:00
Henri Verbeet f3e1a9fa16 ddraw: Initialize the swapchain presentation parameters in ddraw_create_swapchain(). 2011-09-12 10:08:38 +02:00
Francois Gouget 489527fe44 ddraw: Remove WINAPI on static functions where not needed. 2011-09-08 20:08:07 +02:00
Henri Verbeet bbfbd66d9f ddraw: Introduce a function for creating the swapchain. 2011-09-08 11:11:20 +02:00
Henri Verbeet cbc009b8d2 ddraw: Also check errors returned by ddraw_create_gdi_swapchain() in CreateSurface(). 2011-09-08 11:11:15 +02:00
Stefan Dösinger 73f9dd1c30 ddraw: Add tests for dwZBufferBitDepth and dwMipMapCount values. 2011-09-07 11:15:43 +02:00
Stefan Dösinger 4466d6223b ddraw: Add tests for DDSD_PIXELFORMAT and DDSD_ZBUFFERBITDEPTH in Lock. 2011-09-07 11:15:37 +02:00
Stefan Dösinger 029c5a6cf1 ddraw: Convert DDSURFACEDESC2 in lock. 2011-09-07 11:15:32 +02:00
Stefan Dösinger d6f17d686d ddraw: Check the alignment, not the size. 2011-09-07 11:15:20 +02:00
Stefan Dösinger 8e79a7e664 ddraw: Add some NULL pointer tests. 2011-09-07 11:15:09 +02:00
Stefan Dösinger 252bead280 ddraw: Remove crashing tests. 2011-09-07 11:15:05 +02:00
Henri Verbeet 5824551d76 ddraw: Set the swap effect to WINED3DSWAPEFFECT_COPY in ddraw_create_gdi_swapchain().
The actual swapchain implementation ignores the swap effect and always does a
copy anyway, but this makes it consistent with ddraw_attach_d3d_device().
2011-09-07 11:12:43 +02:00
Henri Verbeet 582767ce45 ddraw: Only explicitly initialize non-zero fields in ddraw_create_gdi_swapchain().
Update ddraw_attach_d3d_device() for consistency.
2011-09-07 11:12:34 +02:00
Francois Gouget 94532dbd08 ddraw/tests: Fix compilation on systems that don't support nameless unions. 2011-09-05 10:54:00 +02:00
Ričardas Barkauskas d9ada7929a ddraw: Don't allow SetPalette on mipmap sublevels instead of root surfaces. 2011-09-02 18:28:25 +02:00
Stefan Dösinger 4107963967 ddraw: Fix a test message. 2011-09-02 14:42:53 +02:00
Stefan Dösinger 6057041deb ddraw: Make the overlay tests pass on Windows 7. 2011-09-02 14:42:48 +02:00
Stefan Dösinger e0db367aef ddraw: Set the viewport after changing the render target. 2011-09-02 14:42:43 +02:00
Stefan Dösinger 5ce2e1f39e ddraw: Mark DepthFill blit failures between beginScene and EndScene broken. 2011-09-02 14:42:34 +02:00
Stefan Dösinger 2fc534edf2 ddraw: Simplify Z format parsing a bit, remove ERRs. 2011-09-02 14:42:28 +02:00
Francois Gouget 3a9343e520 ddraw/tests: Make enum_z_fmt_cb() static. 2011-09-02 14:42:10 +02:00
Stefan Dösinger 05b3222b39 ddraw: Add a test for DDSD_ZBUFFERBITDEPTH and DDSD_PIXELFORMAT. 2011-08-31 19:43:09 +02:00
Stefan Dösinger 6176eb87de ddraw: Set dwZBufferBitDepth in old z buffers. 2011-08-31 19:43:09 +02:00
Stefan Dösinger 42b7ad4fd4 ddraw: Convert dwZBufferBitDepth into a DDPIXELFORMAT. 2011-08-31 19:43:09 +02:00
Stefan Dösinger c42277883a ddraw: Introduce a function to convert a DDSURFACEDESC2 to a DDSURFACEDESC. 2011-08-31 19:43:09 +02:00
Stefan Dösinger 76fecde8fb ddraw: Introduce a function to convert a DDSURFACEDESC to a DDSURFACEDESC2. 2011-08-31 19:43:09 +02:00
Stefan Dösinger 167b65ca5e ddraw: Show that ddraw reads ddsCaps without DDSD_CAPS set. 2011-08-31 19:43:09 +02:00
Henri Verbeet 43ad90ce31 ddraw: Get rid of the ImplType fields in IDirectDrawImpl and IDirectDrawSurfaceImpl. 2011-08-31 19:42:55 +02:00
Henri Verbeet c89a3ffe80 ddraw: Get rid of the surface implementation switching code. 2011-08-31 19:42:52 +02:00
Henri Verbeet 94ae743ea6 ddraw: Make the OpenGL renderer the default one. 2011-08-31 12:08:02 +02:00
Henri Verbeet 8f46cb6b8b ddraw: Introduce a separate function for setting the focus window. 2011-08-29 19:42:46 +02:00
Henri Verbeet 93b5f681d9 ddraw: Remove a redundant check from ddraw7_SetCooperativeLevel(). 2011-08-29 19:42:41 +02:00
Henri Verbeet cad9cbe445 ddraw: Trace which surfaces we enumerate in ddraw7_EnumSurfaces(). 2011-08-29 19:42:31 +02:00
Stefan Dösinger 899b278558 ddraw: Emulate a 24 bit depth format without stencil or padding. 2011-08-29 13:56:33 +02:00
Stefan Dösinger caff742d41 ddraw: Trust wined3d to give us what we asked for. 2011-08-29 13:56:17 +02:00
Stefan Dösinger 30d9926a95 ddraw: Don't re-write the surface's pixelformat.
The pixelformat is passed in in ddraw form in the desc parameter, which is copied
into the surface's DDSURFACEDESC2 structure, so the format is already set.
2011-08-29 13:56:11 +02:00
Ričardas Barkauskas bf7df85169 ddraw: Do not create implicit depth buffer. 2011-08-25 11:31:38 +02:00
Stefan Dösinger 138a12545d ddraw: Correct WINED3DFMT_X8D24_UNORM. 2011-08-24 11:52:07 +02:00
Stefan Dösinger 8e7ff78354 ddraw: Correct WINED3DFMT_D24_UNORM_S8_UINT. 2011-08-24 11:52:07 +02:00
Ričardas Barkauskas 68f3d21f02 ddraw: Print IDirectDrawGammaControl interface reference count for easier debugging. 2011-08-22 17:16:04 +02:00
Ričardas Barkauskas 5c8ad26757 ddraw: Do not AddRef IDirectDraw7 iface in CreateSurface helper. 2011-08-22 17:15:54 +02:00
Ričardas Barkauskas abf8728e1f ddraw: Don't allow setting palette on non root surfaces. 2011-08-22 17:15:48 +02:00
Ričardas Barkauskas 1a609ecab8 ddraw/tests: Properly release no longer used interfaces. 2011-08-22 17:15:41 +02:00
Henri Verbeet 831801dd60 ddraw: Remove rectangle validation from ddraw_surface7_BltFast().
This is already done by wined3d_surface_blt().
2011-08-05 09:17:43 +02:00
Frédéric Delanoy 760faf01a9 tests: Assorted spelling fixes. 2011-08-04 18:27:37 +02:00
Henri Verbeet 92e616f355 ddraw: Remove rectangle validation from ddraw_surface7_Blt().
This is already done by wined3d_surface_blt().
2011-08-04 09:04:44 +02:00
Alexandre Julliard b56dc9a6f7 winecrt0: Remove the clsid parameter in __wine_(un)register_resources. 2011-08-02 20:47:49 +02:00
Frédéric Delanoy f932abf326 dlls: Assorted spelling fixes. 2011-08-01 18:26:27 +02:00
Ričardas Barkauskas c1aaacd58c ddraw: Change IDirect3DTexture2_vtbl to IDirect3DTexture2_iface. 2011-07-29 19:19:32 +02:00
Ričardas Barkauskas 8000fc4e35 ddraw: Rename surface_from_texture2 to impl_from_IDirect3DTexture2. 2011-07-29 19:19:25 +02:00
Ričardas Barkauskas 15f16e8f5e ddraw: Use unsafe_impl_from_IDirect3DTexture2 for application provided interfaces. 2011-07-29 19:19:11 +02:00
Ričardas Barkauskas 91a1ed8be9 ddraw: COM cleanup for IDirect3DTexture interface. 2011-07-29 19:19:07 +02:00
Ričardas Barkauskas 0a3582865e ddraw: Use unsafe_impl_from_IDirect3DTexture() for application provided interfaces. 2011-07-29 19:18:59 +02:00
Ričardas Barkauskas f5c46b01f4 ddraw: Do not increase wined3d texture refcount in IDirect3DDevice7_GetTexture. 2011-07-29 18:47:18 +02:00
Henri Verbeet 2256a7e804 wined3d: wined3d_device_evict_managed_resources() doesn't need a return value. 2011-07-29 12:09:39 +02:00
Matteo Bruni 0c34811612 ddraw/tests: Add a couple of fog tests. 2011-07-28 11:29:02 +02:00
Matteo Bruni b6af8a7ef9 ddraw/tests: Fix some messages. 2011-07-27 11:53:02 +02:00
Matteo Bruni 2308f4cfda ddraw/tests: Rename a variable. 2011-07-27 11:52:54 +02:00
Henri Verbeet e55121773a ddraw/tests: Add tests to show that resizing the window on mode changes is a property of DDSCL_EXCLUSIVE. 2011-07-22 12:57:19 +02:00
Henri Verbeet 84413298de ddraw: Resize the window after setting the new display mode. 2011-07-22 12:57:18 +02:00
Henri Verbeet 04d541c26d ddraw: Just use SetWindowPos() in ddraw_set_display_mode().
Instead of going through wined3d_device_restore_fullscreen_window() /
wined3d_device_setup_fullscreen_window(). The main point of those functions is
changing the window styles, but we don't actually need that here. More
importantly, we filter the messages generated by those functions in wined3d,
while tests show that messages generated by SetDisplayMode() /
RestoreDisplayMode() are visible to the application. Applications depend on
WM_SIZE in particular.
2011-07-19 14:05:56 +02:00