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