Commit Graph

331 Commits

Author SHA1 Message Date
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
Ričardas Barkauskas e5d69ba923 ddraw: Separate IDirectDrawGammaControl reference count. 2011-06-28 11:57:51 -05:00
Ričardas Barkauskas 5f6d7021aa ddraw: Separate IDirectDrawSurface and IDirectDrawSurface7 reference counts. 2011-06-28 11:57:50 -05:00
Ričardas Barkauskas 9190d349d2 ddraw: Separate IDirectDrawSurface4 reference count. 2011-06-28 11:57:50 -05:00
Ričardas Barkauskas c7e5e6d2b5 ddraw: Use ddraw_surface_release_iface to destroy leftover surfaces. 2011-06-28 11:57:50 -05:00
Ričardas Barkauskas f0634f7a4b ddraw: Separate IDirectDrawSurface3 reference count. 2011-06-21 17:11:53 +02:00
Ričardas Barkauskas 167ffc7b4b ddraw: Separate IDirectDrawSurface2 reference count. 2011-06-21 17:10:55 +02:00
Ričardas Barkauskas 4b8fd522f6 ddraw: Add iface count for IDirectSurfaceImpl. 2011-06-21 17:09:52 +02:00
Ričardas Barkauskas 8959a1395a ddraw: Remove ddraw_set_surface_version and set surface version when initialising it. 2011-06-21 17:09:02 +02:00
Michael Stefaniuc 9e50efd89f ddraw: Use unsafe_impl_from_IDirectDrawClipper for an app provided iface. 2011-06-20 19:32:03 +02:00
Michael Stefaniuc 588ddee736 ddraw: COM cleanup for the IDirectDrawClipper iface. 2011-06-20 19:32:03 +02:00
Michael Stefaniuc d7768739ec ddraw: COM cleanup for the IDirect3DVertexBuffer7 iface. 2011-06-15 20:04:39 +02:00
Michael Stefaniuc 60223057f0 ddraw: COM cleanup for the IDirect3DVertexBuffer iface. 2011-06-15 20:04:39 +02:00
Michael Stefaniuc 8e27274163 ddraw: Use unsafe_impl_from_IDirect3DVertexBuffer() for app provided ifaces. 2011-06-15 20:04:39 +02:00
Michael Stefaniuc d010dac84d ddraw: Rename d3d_vertex_buffer_init() and have it allocate the object too. 2011-06-15 20:04:39 +02:00
Francois Gouget 9c99738780 ddraw: Make unsafe_impl_from_IDirectDrawSurface{2,3}() static. 2011-06-13 11:32:49 +02:00
Ričardas Barkauskas f3ae1b99f6 ddraw: Separate IDirectDrawSurface vtable. 2011-06-10 15:26:52 +02:00
Ričardas Barkauskas 27063ffeaa ddraw: Use unsafe_impl_from_IDirectDrawSurface() for application provided interfaces. 2011-06-10 15:26:29 +02:00