Henri Verbeet
80dbeb9699
ddraw: Introduce a ddraw_texture structure as parent for textures.
2013-11-12 14:15:10 +01:00
Henri Verbeet
df01e8d6cc
ddraw: Fix render target refcount handling.
...
Similar to AddAttachedSurface() / DeleteAttachedSurface(), we should Release
the interface version that we stored. (And actually store the interface that
we AddRef.)
2013-09-17 12:01:18 +02:00
Henri Verbeet
73a0327487
ddraw: Avoid LPBYTE.
2013-09-11 09:59:06 +02:00
Henri Verbeet
4735690dc2
ddraw: Introduce a helper function for initializing a D3DDEVICEDESC structure from a D3DDEVICEDESC7 structure.
2013-09-06 12:00:22 +02:00
Stefan Dösinger
769dd6d158
ddraw: Gracefully handle recursive SetCooperativeLevel calls.
2013-09-02 18:07:14 +02:00
Henri Verbeet
43ecaf29c3
wined3d: Get rid of the DDRAW_PITCH_ALIGNMENT and D3D8_PITCH_ALIGNMENT constants.
2013-08-29 19:56:17 +02:00
Henri Verbeet
29c43e2efc
ddraw: Rename PixelFormat_WineD3DtoDD() to ddrawformat_from_wined3dformat().
2013-06-07 11:58:29 +02:00
Henri Verbeet
86eb211159
ddraw: Rename PixelFormat_DD2WineD3D() to wined3dformat_from_ddrawformat().
...
For consistency with the other D3D dlls.
2013-06-07 11:58:27 +02:00
Henri Verbeet
d6bc4fe71a
wined3d: Allow surface flags to be passed to texture creation functions.
2013-06-06 11:47:19 +02:00
Stefan Dösinger
4e51195e0b
ddraw: Restore resolution on EXCLUSIVE->NORMAL switch.
2013-06-06 10:45:38 +02:00
Henri Verbeet
e4816996c3
ddraw: Handle the "DirectDrawRenderer" registry key in wined3d.
2013-05-30 10:57:08 +02:00
Henri Verbeet
b886d06737
ddraw: Replace the various BOOLs in struct ddraw with a flags field.
2013-05-30 10:56:51 +02:00
Henri Verbeet
1249976eb6
wined3d: Get rid of the surface_type parameter to wined3d_check_device_format().
2013-01-17 12:22:01 +01:00
Stefan Dösinger
d3520ef465
ddraw: Don't discard buffers that haven't been used in draws.
2013-01-10 16:05:34 +01:00
Henri Verbeet
293f362d55
ddraw: Avoid LPD3DMATRIX.
2013-01-04 12:16:27 +01:00
Stefan Dösinger
94388ed6c2
ddraw: Handle DrawPrimitive with a dynamic vertex buffer.
2012-12-18 12:36:47 +01:00
Stefan Dösinger
6deaa02fda
ddraw: Move the index buffer growing code to a separate function.
2012-12-18 12:36:40 +01:00
Stefan Dösinger
ea40a3a8b5
ddraw: Pass the number of vertices to DrawIndexedPrimitive.
2012-12-18 12:36:28 +01:00
Stefan Dösinger
67230fc013
ddraw: Create a dynamic buffer if DDLOCK_DISCARDCONTENTS is used.
2012-12-04 10:55:06 +01:00
Stefan Dösinger
a61f68fc5a
ddraw: Properly use the index buffer as a dynamic buffer.
2012-11-28 20:14:58 +01:00
Stefan Dösinger
4b95487bdd
ddraw: Don't create a wastefully large index buffer.
2012-11-28 20:14:57 +01:00
Henri Verbeet
ddbe791d37
wined3d: Set texture_level in surface_set_texture_target() as well.
2012-10-24 11:24:22 +02:00
Henri Verbeet
698ff9ba4e
ddraw: When restoring the display mode, use the mode set before the first mode change on any ddraw object.
2012-10-17 11:45:20 +02:00
Henri Verbeet
bc3d767fda
ddraw: Only restore the display mode if we changed it.
2012-10-17 11:45:14 +02:00
Henri Verbeet
1fab14af9e
ddraw: Just implement ddraw7_RestoreDisplayMode() on top of wined3d_set_adapter_display_mode().
2012-10-16 11:37:10 +02:00
Henri Verbeet
46a9a7e548
ddraw: Get rid of the "tex_root" hack.
2012-07-13 10:29:19 -05:00
Henri Verbeet
0f9ccac447
ddraw: Get rid of the member_info typedef.
2012-05-03 23:44:53 +02:00
Henri Verbeet
5b680d6023
ddraw: Get rid of the flag_info typedef.
2012-05-03 11:17:56 +02:00
Henri Verbeet
fae3a6430d
ddraw: Get rid of IDirect3DVertexBufferImpl.
2012-04-12 20:36:53 +02:00
Henri Verbeet
4d1a659c3a
ddraw: Get rid of IDirect3DExecuteBufferImpl.
2012-04-11 18:14:41 +02:00
Henri Verbeet
daedd0077d
ddraw: Get rid of IDirect3DDeviceImpl.
2012-04-10 16:21:25 +02:00
Henri Verbeet
cf30899f1a
ddraw: Version 1 devices are aggregated by the surface that created them.
2012-04-06 20:11:17 +02:00
Henri Verbeet
4f91eb3fe1
ddraw: Keep track of the ddraw version used to create a device.
...
This also obsoletes the "from_surface" device field.
2012-04-04 17:22:19 +02:00
Henri Verbeet
814fd3b39e
ddraw: The texture interface shares its refcount with the surface interface version used to create the surface.
...
This probably implies that on native the texture interface is part of a
separate object that's aggregated by the surface.
2012-04-02 12:39:28 +02:00
Henri Verbeet
6f35ec6092
ddraw: Make ddraw_surface_wined3d_parent_ops static.
2012-03-26 18:15:07 +02:00
Henri Verbeet
fefb5a943d
ddraw: Get rid of IDirect3DMaterialImpl.
2012-03-16 11:09:07 +01:00
Henri Verbeet
0c11c316bb
ddraw: Get rid of IDirect3DViewportImpl.
2012-03-15 19:52:05 +01:00
Henri Verbeet
7b918934e6
ddraw: Get rid of IDirect3DLightImpl.
2012-03-14 11:48:45 +01:00
Henri Verbeet
d0a37cdeb5
ddraw: Get rid of IDirectDrawPaletteImpl.
2012-03-13 10:26:54 +01:00
Henri Verbeet
5f43cd2631
ddraw: Get rid of IDirectDrawSurfaceImpl.
2012-03-12 10:44:01 +01:00
Henri Verbeet
1cee1891fd
ddraw: Get rid of IDirectDrawImpl.
2012-03-09 11:32:35 +01:00
Henri Verbeet
3769afa33d
wined3d: Get rid of the WINED3DSURFTYPE typedef.
2012-01-20 13:31:33 +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
Francois Gouget
daeb4d6d29
ddraw: Make ddraw_reset_enum_callback() and ddraw_surface_destroy() static.
2012-01-09 12:52:11 +01:00
Henri Verbeet
f17e714857
ddraw: Implement IDirectDrawClipper::SetClipList().
2012-01-06 19:24:20 +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
00096c82fd
wined3d: Get rid of the WINED3DZBUFFERTYPE typedef.
2011-12-22 10:08:48 +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
67bca436ee
wined3d: Get rid of the WINED3DDEVTYPE typedef.
2011-12-13 18:58:58 +01:00
Henri Verbeet
e6fb4537f0
ddraw: Move clipper handling to ddraw.
2011-12-13 18:58:37 +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
8e6f5c34a2
ddraw: We can't render to the desktop window either.
2011-11-18 14:26:16 +01:00
Henri Verbeet
a2963b662c
ddraw: Use wined3d_mutex_lock() / wined3d_mutex_unlock() for locking.
2011-11-14 15:25:21 +01: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
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
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
f44734b724
ddraw: Use unsafe_impl_from_IDirect3DViewport3 for application provided interfaces.
2011-10-04 15:25:00 -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
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
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
Henri Verbeet
b9fcf71c71
ddraw: Use real flips.
2011-09-16 17:23:08 +02:00
Henri Verbeet
5186882098
ddraw: Store the primary surface.
2011-09-16 17:23:08 +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
Henri Verbeet
be32dd86d6
ddraw: Get rid of an unused prototype.
2011-09-13 09:19:30 +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
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
Henri Verbeet
43ad90ce31
ddraw: Get rid of the ImplType fields in IDirectDrawImpl and IDirectDrawSurfaceImpl.
2011-08-31 19:42:55 +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
Michael Stefaniuc
faa269c42a
ddraw: Use unsafe_impl_from_IDirect3DExecuteBuffer for an app provided iface.
2011-07-08 14:45:23 +02:00
Michael Stefaniuc
663483e16e
ddraw: COM cleanup for the IDirect3DExecuteBuffer iface.
2011-07-08 14:45:19 +02:00
Dylan Smith
ced4c38324
ddraw: Partially revert a struct copy change to fix a regression.
...
Commit 3871329872
caused the regression.
2011-06-28 16:45:56 -05:00