Commit Graph

575 Commits

Author SHA1 Message Date
Henri Verbeet d6bc4fe71a wined3d: Allow surface flags to be passed to texture creation functions. 2013-06-06 11:47:19 +02:00
Henri Verbeet 13a38e8d5e wined3d: Pass a wined3d_resource_desc structure to device_parent_create_swapchain_surface(). 2013-06-04 10:14:28 +02:00
Henri Verbeet a4d2660c9b wined3d: Pass a wined3d_resource_desc structure to device_parent_create_texture_surface(). 2013-06-04 10:14:26 +02:00
Michael Stefaniuc d86ecd4bb4 d3d9: Remove ERR() on HeapAlloc failure for small sizes known at compile time. 2013-02-07 15:48:20 +01:00
Stefan Dösinger 149a85c2e7 d3d: Remove high level patch support.
No Windows driver ever exposed this, and no game uses this. The
only application that used this feature is a DirectX 8 SDK sample.
2013-01-25 11:29:41 +01:00
Stefan Dösinger c57511ce4a d3d9: Return D3D_OK from the palette setters. 2013-01-14 17:29:59 +01:00
Stefan Dösinger f3f172ce81 d3d9: Use dynamic buffers for DrawIndexedPrimitiveUP. 2012-12-19 12:53:23 +01:00
Stefan Dösinger 873603f941 d3d9: Use a dynamic buffer for DrawPrimitiveUP. 2012-12-19 12:53:20 +01:00
Henri Verbeet d0d213f7d1 d3d10core: Implement d3d10_device_IAGetIndexBuffer(). 2012-11-21 13:25:57 +01:00
Henri Verbeet 79f0b4d977 d3d9: Avoid resetting device state for d3d9ex resets. 2012-11-20 11:44:27 +01:00
Henri Verbeet 2bf46c60fb wined3d: Replace the face and level parameters to device_parent_create_texture_surface() with the sub-resource index. 2012-10-25 11:48:25 +02: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 5fcc1f8f70 wined3d: Just return the surface from wined3d_swapchain_get_back_buffer(). 2012-10-04 14:09:50 +02:00
Henri Verbeet 2ad5808996 wined3d: wined3d_device_get_creation_parameters() never fails. 2012-10-01 23:07:55 +02:00
Henri Verbeet 6e5cf8c698 wined3d: wined3d_device_set_depth_stencil() never fails. 2012-10-01 23:07:51 +02:00
Henri Verbeet 95b4207c7f wined3d: Just return the surface from wined3d_device_get_depth_stencil(). 2012-10-01 12:11:02 +02:00
Henri Verbeet 972217fd6a wined3d: Just return the surface from wined3d_device_get_render_target(). 2012-10-01 12:10:55 +02:00
Henri Verbeet c0f52fbf1c wined3d: wined3d_device_set_software_vertex_processing() never fails. 2012-09-27 13:10:48 +02:00
Henri Verbeet f9d494294a wined3d: Just return the texture from wined3d_device_get_texture(). 2012-09-27 13:10:43 +02:00
Henri Verbeet c0a83b1d96 wined3d: wined3d_device_get_texture_stage_state() never fails. 2012-09-26 14:40:35 +02:00
Henri Verbeet 26c0714009 wined3d: wined3d_device_set_texture_stage_state() never fails. 2012-09-26 14:40:33 +02:00
Henri Verbeet 6e4c40689c wined3d: Just return the shader from wined3d_device_get_pixel_shader(). 2012-09-25 11:19:11 +02:00
Henri Verbeet fc711d4955 wined3d: wined3d_device_set_pixel_shader() never fails. 2012-09-25 11:19:07 +02:00
Henri Verbeet 6909b5143b wined3d: Just return the shader from wined3d_device_get_vertex_shader(). 2012-09-24 09:58:06 +02:00
Henri Verbeet b97ec7ae0c wined3d: wined3d_device_set_vertex_shader() never fails. 2012-09-24 09:58:03 +02:00
Henri Verbeet 2f03ad1a40 wined3d: Just return the declaration from wined3d_device_get_vertex_declaration(). 2012-09-21 10:53:10 +02:00
Henri Verbeet 01918d05ed wined3d: wined3d_device_set_vertex_declaration() never fails. 2012-09-21 10:53:06 +02:00
Henri Verbeet de1ae1eb8a wined3d: wined3d_device_get_scissor_rect() never fails. 2012-09-19 23:54:59 +02:00
Henri Verbeet 2de9fc640b wined3d: wined3d_device_set_scissor_rect() never fails. 2012-09-19 23:54:56 +02:00
Henri Verbeet 62670c7ba5 wined3d: wined3d_device_get_sampler_state() never fails. 2012-09-19 13:04:52 +02:00
Henri Verbeet 0d96be2c20 wined3d: wined3d_device_set_sampler_state() never fails. 2012-09-19 13:04:48 +02:00
Henri Verbeet 343974e2fd wined3d: wined3d_device_get_material() never fails. 2012-09-18 10:18:51 +02:00
Henri Verbeet 2669feeb8c wined3d: wined3d_device_set_material() never fails. 2012-09-18 10:18:42 +02:00
Henri Verbeet 90bd04c6b6 wined3d: wined3d_device_multiply_transform() never fails. 2012-09-14 15:43:20 +02:00
Henri Verbeet 706ece827b wined3d: wined3d_device_get_transform() never fails. 2012-09-12 12:46:12 +02:00
Henri Verbeet f79bbc767d wined3d: wined3d_device_set_transform() never fails. 2012-09-12 12:46:07 +02:00
Henri Verbeet d601a0dede wined3d: wined3d_device_get_render_state() never fails. 2012-09-11 18:03:57 +02:00
Henri Verbeet 75cec973d5 wined3d: wined3d_device_set_render_state() never fails. 2012-09-11 18:03:53 +02:00
Henri Verbeet 3569b6ccd2 wined3d: wined3d_device_get_viewport() never fails. 2012-09-10 11:40:19 +02:00
Henri Verbeet 64aae8cf02 wined3d: wined3d_device_set_viewport() never fails. 2012-09-10 11:40:14 +02:00
Henri Verbeet c8f4ca315e wined3d: Just return the buffer from wined3d_device_get_index_buffer(). 2012-09-06 15:45:32 +02:00
Henri Verbeet a3e28f6ce5 wined3d: wined3d_device_set_index_buffer() never fails. 2012-09-06 15:45:32 +02:00
Henri Verbeet 8fd7d3a2b3 wined3d: Just return the swapchain from wined3d_device_get_swapchain(). 2012-09-05 11:48:04 +02:00
Henri Verbeet 0821c8024b wined3d: Merge the device parent create_rendertarget() and create_depth_stencil() handlers. 2012-07-11 09:57:07 -05:00
Henri Verbeet 8ad98cdbee wined3d: Get rid of the "discard" parameter to device_parent_create_depth_stencil(). 2012-07-10 10:39:42 -05:00
Henri Verbeet 9b74ebd794 wined3d: Get rid of the "lockable" parameter to device_parent_create_rendertarget(). 2012-07-10 10:39:34 -05:00
Henri Verbeet 73eceafb17 d3d9: Implement d3d9_device_ResetEx(). 2012-07-09 15:04:18 -04:00
Henri Verbeet c98725ccc3 d3d9: Introduce a helper function to create D3DPRESENT_PARAMETERS from a wined3d_swapchain_desc. 2012-07-03 14:56:34 +02:00
Henri Verbeet 003ab4d3e0 d3d9: Introduce a helper function to create a wined3d_swapchain_desc from D3DPRESENT_PARAMETERS. 2012-07-03 14:56:26 +02:00
Henri Verbeet 2457d34314 d3d9: Pass a wined3d_swapchain_desc structure to swapchain_init(). 2012-07-02 19:18:00 +02:00
Henri Verbeet 256d433164 d3d9: Implement d3d9_device_PresentEx(). 2012-06-29 10:14:21 +02:00
Henri Verbeet 0ce894f274 d3d9: Implement d3d9_device_GetDisplayModeEx(). 2012-06-28 01:39:28 +02:00
Henri Verbeet a1bfd0988f wined3d: Take scanline ordering into account in the mode setting code. 2012-06-28 01:39:26 +02:00
Henri Verbeet 56fffd0659 d3d9: Get rid of IDirect3DQuery9Impl. 2012-06-12 17:27:34 +02:00
Henri Verbeet 2f2995de75 d3d9: Get rid of IDirect3DPixelShader9Impl. 2012-06-12 17:27:29 +02:00
Henri Verbeet df9c6aa3ec d3d9: Get rid of IDirect3DVertexShader9Impl. 2012-06-12 17:27:25 +02:00
Henri Verbeet bdd42942c0 d3d9: Get rid of IDirect3DVertexDeclaration9Impl. 2012-06-01 17:46:45 +02:00
Henri Verbeet 79d62ca1fb d3d9: Get rid of IDirect3DStateBlock9Impl. 2012-06-01 17:46:44 +02:00
Henri Verbeet 6341389fe4 d3d9: Get rid of IDirect3DIndexBuffer9Impl. 2012-05-31 18:05:32 +02:00
Henri Verbeet 503b16392b d3d9: Get rid of IDirect3DVertexBuffer9Impl. 2012-05-31 18:05:29 +02:00
Henri Verbeet cb9cc2ccee d3d9: Get rid of IDirect3DSurface9Impl. 2012-05-30 17:18:00 +02:00
Henri Verbeet d4c5c03cbb d3d9: Get rid of IDirect3DSwapChain9Impl. 2012-05-30 17:18:00 +02:00
Henri Verbeet a91ef5217d d3d9: Get rid of IDirect3DVolume9Impl. 2012-05-29 10:45:13 +02:00
Henri Verbeet 2a63fe6624 d3d9: Get rid of IDirect3DDevice9Impl. 2012-05-29 10:45:09 +02:00
Henri Verbeet 82adae949b d3d9: Get rid of IDirect3D9Impl. 2012-05-25 16:24:11 +02:00
Henri Verbeet e3ecfa5974 wined3d: Store user clip planes as 4-component float vectors. 2012-05-22 18:07:02 +02:00
Henri Verbeet 9936ec0c1c d3d9: Properly retrieve an interface pointer in IDirect3DDevice9Impl_GetStreamSource(). 2012-04-30 11:01:13 +02:00
Henri Verbeet c208d973f6 d3d9: Properly retrieve an interface pointer in IDirect3DDevice9Impl_GetIndices(). 2012-04-30 11:01:09 +02:00
Henri Verbeet c638aab2b4 d3d9: Properly retrieve an interface pointer in IDirect3DDevice9Impl_GetPixelShader(). 2012-04-27 11:59:27 +02:00
Henri Verbeet 722e60ab2e d3d9: Properly retrieve an interface pointer in IDirect3DDevice9Impl_GetVertexShader(). 2012-04-27 11:59:23 +02:00
Henri Verbeet a495b7af48 d3d9: Properly retrieve an interface pointer in IDirect3DDevice9Impl_GetVertexDeclaration(). 2012-04-27 11:59:21 +02:00
Henri Verbeet 3e2d946290 d3d9: Properly retrieve an interface pointer in IDirect3DDevice9Impl_GetTexture(). 2012-04-26 19:26:08 +02:00
Henri Verbeet e333334450 d3d9: Properly retrieve an interface pointer in IDirect3DDevice9Impl_GetDepthStencilSurface(). 2012-04-26 19:26:06 +02:00
Henri Verbeet 6a03dbf111 d3d9: Properly retrieve an interface pointer in IDirect3DDevice9Impl_GetRenderTarget(). 2012-04-26 19:26:02 +02:00
Henri Verbeet d01e0647d1 d3d9: Get rid of IDirect3DBaseTexture9Impl. 2012-04-25 12:14:54 +02:00
Henri Verbeet fb5bc72408 d3d9: Properly retrieve an interface pointer in IDirect3DDevice9Impl_GetBackBuffer(). 2012-04-25 12:14:02 +02:00
Henri Verbeet 138edd31e5 d3d9: Use the surface implementation pointer in reset_enum_callback(). 2012-04-25 12:13:58 +02:00
Henri Verbeet 11a2231c11 d3d9: Properly retrieve an interface pointer in IDirect3DDevice9Impl_GetSwapChain(). 2012-04-25 12:13:55 +02:00
Henri Verbeet 7da2dc747c d3d9: Get rid of IDirect3DVolumeTexture9Impl. 2012-04-24 11:29:40 +02:00
Henri Verbeet 21c65893c9 d3d9: Get rid of IDirect3DCubeTexture9Impl. 2012-04-23 11:47:58 +02:00
Henri Verbeet 5569db9a98 d3d9: Get rid of IDirect3DTexture9Impl. 2012-04-23 11:44:48 +02:00
Henri Verbeet 949f7b4524 d3d9: COM cleanup for the IDirect3DVertexDeclaration9 interface. 2012-04-13 10:48:46 +02:00
Henri Verbeet 81ed6e0c86 d3d9: Use the wined3d declaration to retrieve the FVF in IDirect3DDevice9Impl_GetFVF(). 2012-04-13 10:48:43 +02:00
Henri Verbeet 5fc17b84d0 d3d9: Store wined3d vertex declarations in the fvf lookup table.
This also implicitly gets rid of the convFVF hack in
IDirect3DVertexDeclaration9Impl_Release().
2012-04-12 20:36:45 +02:00
Henri Verbeet ba67df7a60 d3d9: Introduce a separate function for vertex declaration creation. 2012-04-12 20:36:40 +02:00
Henri Verbeet 53b3f9d40e d3d9: COM cleanup for the IDirect3DSwapChain9 interface.
This is mostly based on the COM cleanup scripts by Michael Stefaniuc.
2012-04-11 18:14:36 +02:00
Henri Verbeet 8b95d8d2e3 d3d9: Introduce a separate function for swapchain creation. 2012-04-11 18:14:30 +02:00
Henri Verbeet f47267ad55 d3d9: Don't return a pointer to the implementation in IDirect3DDevice9Impl_QueryInterface(). 2012-04-03 12:00:45 +02:00
Henri Verbeet cbc3e9985c d3d9: Store an implementation pointer to the d3d9 structure in IDirect3DDevice9Impl. 2012-03-28 11:36:32 +02:00
Stefan Dösinger 038e308a41 wined3d: Relax depth blit requirements. 2012-01-23 16:06:55 +01:00
Henri Verbeet e53a277305 wined3d: Get rid of the WINED3DPOOL typedef. 2012-01-18 12:37:38 +01:00
Henri Verbeet 6a5a098b23 wined3d: Get rid of the WINED3DRESOURCETYPE typedef. 2012-01-18 12:37:38 +01:00
Henri Verbeet a44b062aed wined3d: Get rid of the WINED3DCUBEMAP_FACES typedef. 2012-01-13 17:34:31 +01:00
Henri Verbeet 43fcbcb36e wined3d: Get rid of the WINED3DTEXTURESTAGESTATETYPE typedef. 2012-01-10 10:47:27 +01:00
Henri Verbeet 9a8491045e wined3d: Get rid of the WINED3DMULTISAMPLE_TYPE typedef. 2012-01-09 12:22:17 +01:00
Henri Verbeet 45f6def784 wined3d: Get rid of the WINED3DBACKBUFFER_TYPE typedef. 2012-01-06 19:24:21 +01:00
Henri Verbeet 360c1114d6 wined3d: Get rid of the WINED3DRASTER_STATUS typedef. 2011-12-02 11:51:33 +01:00
Henri Verbeet 94c9b0b4fc wined3d: Get rid of the WINED3DPRESENT_PARAMETERS typedef. 2011-12-02 11:51:29 +01:00
Henri Verbeet b171d5f95d d3d9: Implement texture creation from system memory. 2011-12-02 11:51:15 +01:00
Henri Verbeet d9ab258df8 d3d9: Add some FIXMEs for d3d9ex resource sharing. 2011-12-02 11:51:09 +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 d1327bbefe wined3d: Get rid of the WINED3DDEVICE_CREATION_PARAMETERS typedef. 2011-11-28 16:40:47 +01:00
Henri Verbeet 1c74172a28 wined3d: Get rid of the WINED3DCLIPSTATUS typedef. 2011-11-25 16:21:57 +01:00
Henri Verbeet 2fb21e0a2e wined3d: Get rid of the WINED3DTRIPATCH_INFO typedef. 2011-11-24 17:10:06 +01:00
Henri Verbeet 2ecbe2aa0f wined3d: Get rid of the WINED3DRECTPATCH_INFO typedef. 2011-11-23 09:13:58 +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
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 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
Henri Verbeet 7459180a51 wined3d: Get rid of the WINED3DCOLORVALUE typedef. 2011-11-16 09:41:50 +01:00
Henri Verbeet 6e8273177a wined3d: Reject multisampled readbacks in wined3d_surface_get_render_target_data(). 2011-10-24 11:16:33 +02:00
Henri Verbeet d607586d62 wined3d: Make the present_parameters parameter to wined3d_device_reset() const. 2011-10-19 12:24:36 +02:00
Stefan Dösinger 4365d2905c d3d9: Remove the palette implementation methods. 2011-10-11 13:37:49 +02:00
Henri Verbeet 739a9d9805 wined3d: Return WINED3DERR_NOTFOUND if the render target is NULL in wined3d_device_get_render_target().
This is similar to how wined3d_device_get_depth_stencil() works.
2011-10-10 13:39:39 +02:00
Stefan Dösinger e1d92059ea d3d9: Implement FPUSETUP for msvc. 2011-09-26 17:59:41 +02:00
Henri Verbeet 7e3ecd683c wined3d: Move rectangle validation from surface_cpu_blt() to wined3d_surface_blt().
This fixes some tests because these were getting skipped for the BltOverride() path.
2011-08-04 09:04:39 +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
Henri Verbeet 44e109debe wined3d: Unbind resources inside wined3d_device_reset(). 2011-07-25 21:25:15 +02:00
Henri Verbeet 0739cae273 wined3d: Pass "reset_enum_callback" directly to wined3d_device_reset().
It would have been nice if we could do all of this inside wined3d, but we need
to determine what resources are in use by d3d8/d3d9, not wined3d. This is
mostly an issue for "implicit" resources like swapchain render targets and the
depth / stencil surface. The fact that we're having this problem probably
means we're doing it wrong. Since these implicit resources should only be
referenced by wined3d, we could probably just destroy and recreate the
swapchain, instead of the little updateSurfaceDesc() dance we currently do.
2011-07-25 21:25:01 +02:00
Michael Stefaniuc 4e31d28cff d3d9: COM cleanup for the IDirect3DSurface9 iface. 2011-07-07 12:32:19 +02:00
Michael Stefaniuc a7530e7892 d3d9: Use unsafe_impl_from_IDirect3DSurface9 for app provided ifaces. 2011-07-07 12:32:16 +02:00
Michael Stefaniuc 17eccaffbf d3d9: COM cleanup for the IDirect3DVertexBuffer9 iface. 2011-07-06 16:49:10 +02:00
Michael Stefaniuc 2b3a364e9a d3d9: Use unsafe_impl_from_IDirect3DVertexBuffer9 for app provided ifaces. 2011-07-06 16:49:04 +02:00
Michael Stefaniuc bb4f750592 d3d9: COM cleanup for the IDirect3DVertexShader9 iface. 2011-07-06 16:49:00 +02:00
Michael Stefaniuc f12cbfb509 d3d9: Use unsafe_impl_from_IDirect3DVertexShader9 for an app provided iface. 2011-07-06 16:48:56 +02:00
Michael Stefaniuc b09078b016 d3d9: COM cleanup for the IDirect3DPixelShader9 iface. 2011-07-05 14:30:42 +02:00
Michael Stefaniuc 704f0efe0c d3d9: Use unsafe_impl_from_IDirect3DPixelShader9 for an app provided iface. 2011-07-05 14:30:38 +02:00
Michael Stefaniuc db1dd90225 d3d9: COM cleanup for the IDirect3DIndexBuffer9 iface. 2011-07-05 14:30:33 +02:00
Michael Stefaniuc 875d6900c6 d3d9: Use unsafe_impl_from_IDirect3DIndexBuffer9 for an app provided iface. 2011-07-05 14:30:31 +02:00
Henri Verbeet b296f181dd wined3d: Explicitly set surface alignment in the client libs.
Instead of using dxVersion.
2011-06-24 08:49:42 -05:00
Andrew Nguyen 94785ab4d5 d3d9: Increment the reference count of the IDirect3D9 parent when creating a device. 2011-06-06 21:49:19 +02:00
Andrew Nguyen c4a6c25378 d3d9: Drop a superfluous cast in IDirect3DDevice9Impl_CreateOffscreenPlainSurface. 2011-05-31 18:32:59 +02:00
Henri Verbeet 3032b40c80 wined3d: Get rid of the IWineD3DDeviceParent interface. 2011-05-19 10:06:21 +02:00
Henri Verbeet 8d4ca1f815 wined3d: Remove COM from the device implementation. 2011-05-17 10:06:18 +02:00
Henri Verbeet 979e3744f7 wined3d: Remove state management methods from the IWineD3DDevice interface. 2011-05-17 10:06:15 +02:00
Henri Verbeet 99092e8a0a d3d9: Simplify reset_enum_callback().
Note that the existing code wouldn't work for volumes, since volumes aren't
proper resources in d3d9.
2011-05-05 11:45:10 +02:00
Henri Verbeet 1c1de920e3 wined3d: Remove COM from the surface implementation. 2011-04-29 16:52:13 +02:00
Michael Stefaniuc d5739cd2c3 d3d9: Finish the COM cleanup of the IDirect3DDevice9Ex iface. 2011-04-25 11:40:35 +02:00
Michael Stefaniuc 5f57cc1451 d3d9: Pass an object instead of an iface to IDirect3DDevice9Impl_CreateSurface(). 2011-04-25 11:40:32 +02:00
Michael Stefaniuc e798c72cf4 d3d9: Use impl_from_IDirect3DDevice9Ex instead of casting iface to object. 2011-04-25 11:40:30 +02:00
Michael Stefaniuc a3e77bfe59 d3d9: COM cleanup for the IDirect3DVolumeTexture9 iface. 2011-04-20 16:34:01 +02:00
Michael Stefaniuc aab2d427e3 d3d9: COM cleanup for the IDirect3DVolume9 iface. 2011-04-20 16:33:55 +02:00
Michael Stefaniuc 31bea55ef4 d3d9: COM cleanup for the IDirect3DTexture9 iface. 2011-04-20 16:33:42 +02:00
Henri Verbeet 2c450571e5 wined3d: Remove COM from the volume implementation. 2011-04-15 10:07:57 +02:00
Henri Verbeet 3ec19590d5 wined3d: Remove COM from the swapchain implementation. 2011-04-14 17:13:57 +02:00
Henri Verbeet d2e665230a wined3d: Get rid of the swapchain destroy callback. 2011-04-13 14:13:51 +02:00
Michael Stefaniuc 29116e2400 d3d9: COM cleanup for the IDirect3DCubeTexture9 iface. 2011-04-12 12:50:44 +02:00
Michael Stefaniuc a991b6708b d3d9: COM cleanup for the IDirect3DStateBlock9 iface. 2011-04-12 12:50:37 +02:00
Michael Stefaniuc 78ea105b85 d3d9: COM cleanup for the IDirect3DQuery9 iface. 2011-04-12 12:50:30 +02:00
Henri Verbeet 3c07f7a68e d3d9: Get rid of the implicit swapchain refcounting hacks. 2011-04-11 23:54:18 +02:00
Henri Verbeet f8f83ff2f7 wined3d: Remove COM from the shader implementation. 2011-03-31 12:37:46 +02:00
Henri Verbeet 3d4fe0b750 wined3d: Get rid of IWineD3DPixelShader. 2011-03-30 12:18:03 +02:00
Henri Verbeet 49725ba583 wined3d: Get rid of IWineD3DVertexShader. 2011-03-30 12:17:51 +02:00
Henri Verbeet fd8e18bd2b wined3d: Remove COM from the texture implementation. 2011-03-28 17:08:52 +02:00
Henri Verbeet 2b18192e7a wined3d: Get rid of IWineD3DSurface::GetDesc(). 2011-03-11 11:40:31 +01:00
Henri Verbeet ab8a9f27f9 d3d9: Surfaces always have resource type WINED3DRTYPE_SURFACE. 2011-03-09 12:29:23 +01:00
Henri Verbeet 756fdb7c5a wined3d: Merge the various resource desc structures. 2011-03-09 12:28:58 +01:00
Henri Verbeet b9fae5e9a8 wined3d: Don't require container parents for IWineD3DDeviceParent methods to be COM objects. 2011-03-08 12:27:41 +01:00
Henri Verbeet a27ee75ed2 wined3d: Remove COM from the buffer implementation. 2011-03-04 16:25:58 +01:00
Henri Verbeet 1de6adfbae wined3d: Make IWineD3DResourceImpl an independent structure. 2011-03-01 13:21:59 +01:00
Henri Verbeet 5765632d9f wined3d: Remove COM from the vertex declaration. 2011-02-03 13:15:17 +01:00
Henri Verbeet 36d4268e3c wined3d: Remove COM from IWineD3D. 2011-02-02 12:22:42 +01:00
Henri Verbeet 4b109ff1f8 wined3d: Remove COM from the stateblock. 2011-01-31 12:24:58 +01:00
Henri Verbeet 69ea0884ab d3d9: Check the correct swapchain in IDirect3DDevice9Impl_GetSwapChain() (LLVM/Clang). 2011-01-28 11:58:09 +01:00
Henri Verbeet 06581b4513 d3d9: Fix some return values. 2010-11-16 13:48:51 +01:00
André Hentschel ce0e1f07dc d3d9: Improve CheckDeviceState stub to run Firefox 4 Beta 7. 2010-11-12 11:56:41 +01:00
Henri Verbeet 7e3985e1fe ddraw: Setup the device window in SetCooperativeLevel(). 2010-11-08 13:30:54 +01:00
Henri Verbeet 41a76b958d d3d9: Add some missing locking to IDirect3DDevice9Impl_EndStateBlock().
Found by Michael Stefaniuc & Coccinelle.
2010-11-04 12:12:56 +01:00
Henri Verbeet cd957f5b64 d3d9: Partially implement IDirect3D9Ex::CreateDeviceEx(). 2010-10-27 12:12:00 +02:00
Rico Schüller e6d52c0c8b wined3d: Add argument check for Type to Get/SetTextureStageState(). 2010-09-14 13:32:00 -05:00
Henri Verbeet 07b5c4becf wined3d: Getting the current pixel shader should never fail. 2010-09-07 11:23:31 +02:00
Henri Verbeet 0c54dfe7ba wined3d: Getting the current vertex shader should never fail. 2010-09-07 11:23:27 +02:00
Henri Verbeet 2465b4cf01 d3d9: Move device functions to device.c. 2010-09-01 14:01:02 +02:00
Henri Verbeet 6c4c351791 wined3d: Don't require wined3d object parents to be COM objects. 2010-09-01 14:01:02 +02:00
Henri Verbeet 2ef400901d wined3d: Devices don't need parents. 2010-09-01 12:40:07 +02:00
Henri Verbeet c568916f9e wined3d: Implicit depth/stencil surfaces don't have a container.
They're owned by the device instead of the swapchain.
2010-08-31 14:23:47 +02:00
Henri Verbeet 4005eb2a18 wined3d: Get rid of WINED3DRECT. 2010-08-31 14:23:47 +02:00
Austin English 243771deb1 d3d8/d3d9: Fix a compiler warning on non-i386/x86_64. 2010-08-24 12:25:14 +02:00
Henri Verbeet cc5271d1b7 wined3d: Rename WINED3DFORMAT to wined3d_format_id. 2010-08-24 12:25:01 +02:00
Henri Verbeet 0df144164b wined3d: Pass floating point colors to IWineD3DDeviceImpl_ColorFill(). 2010-08-24 12:24:43 +02:00
Henri Verbeet e6611e22fb d3d9: Set the FPU control word on device creation. 2010-05-26 17:36:32 +02:00
Henri Verbeet 914c8cb8ea ddraw: Acquire/release the focus window from the correct location. 2010-03-18 10:24:15 +01:00
Henri Verbeet 7f8ccf0342 d3d9: Add a separate function for stateblock initialization. 2010-01-20 15:32:15 +01:00
Henri Verbeet bfb63a8634 d3d9: Add a separate function for query initialization. 2010-01-18 14:37:21 +01:00
Henri Verbeet 76804fa711 d3d9: Add a separate function for swapchain initialization. 2009-12-21 15:01:25 +01:00
Henri Verbeet 55f3c576d9 wined3d: Remove the effetively unused "state" field from the device. 2009-11-18 11:16:54 +01:00
Henri Verbeet 434a23d90d d3d9: Move D3D9CB_DestroySwapChain() to device.c. 2009-11-18 11:16:35 +01:00
Henri Verbeet b9243b721a d3d9: Add a separate function for device initialization. 2009-11-18 11:16:31 +01:00
Stefan Dösinger 90e443758a wined3d: Add a parameter for SetRenderTarget viewport setup. 2009-11-03 21:21:30 +01:00
Henri Verbeet bf10dbe8a6 wined3d: Map D3DFMT_D24S8 to WINED3DFMT_D24_UNORM_S8_UINT.
The internal order of the depth and stencil bits is unspecified since the
format isn't lockable.
2009-10-30 11:28:52 +01:00
Henri Verbeet 4dbf1c4900 d3d9: Add traces. 2009-10-20 14:00:36 +02:00
Henri Verbeet 44aead2e1c d3d9: Fix some IDirect3DDevice9Ex methods. 2009-10-19 11:45:25 +02:00
Stefan Dösinger e80144c403 d3d: Make EndScene calls hookable. 2009-10-14 12:21:06 +02:00
Stefan Dösinger dcacd83a82 d3d9: Make some functions hookable. 2009-10-14 12:21:06 +02:00
Henri Verbeet 47c84f4f7f wined3d: Use the DXGI naming convention for all formats. 2009-09-25 15:15:44 +02:00
Henri Verbeet c64da00de7 wined3d: Rename IWineD3DDevice::GetIndices() to IWineD3DDevice::GetIndexBuffer(). 2009-09-25 15:14:52 +02:00
Henri Verbeet 60e32659a7 wined3d: Rename IWineD3DDevice::SetIndices() to IWineD3DDevice::SetIndexBuffer(). 2009-09-25 15:14:44 +02:00
Henri Verbeet 7f1c802b9f d3d9: Add a separate function for pixel shader initialization. 2009-09-24 13:24:40 +02:00
Henri Verbeet cdb741274a d3d9: Add a separate function for vertex shader initialization. 2009-09-24 13:24:04 +02:00
Henri Verbeet 0241fefa94 d3d9: Add a separate function for vertex declaration initialization. 2009-09-23 12:35:00 +02:00
Henri Verbeet 359acf2461 d3d9: Limit "NumSimultaneousRTs" to 4. 2009-09-22 16:17:30 +02:00
Henri Verbeet de9b47924d d3d9: Add a separate function for vertex buffer initialization. 2009-09-18 08:55:05 -05:00
Henri Verbeet 5ec05c556d d3d9: Add a separate function for index buffer initialization. 2009-09-18 08:55:00 -05:00
Henri Verbeet 75f005ebf9 d3d9: Add a separate function for texture initialization. 2009-09-17 10:10:10 -05:00
Henri Verbeet c51fbe9293 d3d9: Add a separate function for cube texture initialization. 2009-09-17 10:09:28 -05:00
Henri Verbeet 5b7b4f59d2 d3d9: Add a separate function for volume texture initialization. 2009-09-16 13:05:51 -05:00
Henri Verbeet e9000d2e6c wined3d: Don't free D3D volumes until the wined3d volume is destroyed. 2009-09-16 13:05:20 -05:00
Henri Verbeet 8ffca99fb0 d3d9: Add a separate function for volume initialization. 2009-09-16 13:04:57 -05:00
Henri Verbeet a5214c306f wined3d: Don't free D3D surfaces until the wined3d surface is destroyed.
This prevents for example a d3d9 depth stencil from being destroyed when it
has no external references but is still in use by the device/stateblock. A
nice side effect is that it simplifies handling of "implicit" surfaces like
the frontbuffer and backbuffers, as well as the forwarding of reference counts
for surfaces that are part of a texture.
2009-09-16 13:04:32 -05:00
Henri Verbeet 52e45865bd d3d9: Add a separate function for surface initialization. 2009-09-15 14:32:23 -05:00
Henri Verbeet 2b2fc827ce wined3d: Remove unused parameters to drawPrimitive(). 2009-09-11 12:09:14 +02:00
Stefan Dösinger e1469961d4 wined3d: Test and fix ddraw and d3d9 GetDC differences.
The MSDN is not totally correct: A8R8G8B8 and A1R5G5B5 also allow GetDC. The
main differences that have to be filtered out in d3d9.dll are GetDC on
A8B8G8R8, X8B8G8R8 and P8.
2009-09-08 13:04:52 +02:00
Henri Verbeet e7d14d02d0 d3d9: Remove trailing spaces. 2009-08-28 11:54:50 +02:00
Henri Verbeet 5f9f079d71 d3d9: Use the wined3d cs for wined3d locking. 2009-08-26 12:11:41 +02:00
Gerald Pfeifer b44596ffff d3d9: Fix variable type in reset_enum_callback(). 2009-06-26 12:02:59 +02:00
Henri Verbeet 88162fabb8 wined3d: Get rid of the pointers in WINED3DSURFACE_DESC. 2009-06-15 13:42:29 +02:00
Henri Verbeet 4bc6b376e0 wined3d: Remove the useless "resource_type" parameter from IWineD3DDevice::CreateSurface(). 2009-06-12 17:33:15 +02:00
Gerald Pfeifer 6383d5fee2 d3d9: Use correct constant types (WINED3DPOOL_DEFAULT instead of D3DPOOL_DEFAULT and WINED3DRTYPE_SURFACE instead of D3DRTYPE_SURFACE). 2009-06-11 11:53:54 +02:00
Henri Verbeet 621da64245 wined3d: Get rid of the silly pointers in WINED3DVOLUME_DESC. 2009-06-09 17:01:14 +02:00
Gerald Pfeifer f39e7182e1 d3d9: Use WINED3DPOOL_DEFAULT instead of D3DPOOL_DEFAULT as appropriate. 2009-06-03 11:27:34 +02:00
Henri Verbeet 59268f7924 d3d9: Having a NULL rendertarget isn't a failure. 2009-05-29 11:26:50 +02:00
Henri Verbeet 6f33b97c94 wined3d: Get rid of the shared_handle parameter.
I don't expect us to support this in the near future, and right now it's just
dead code.
2009-04-23 14:22:06 +02:00
Stefan Dösinger cb1c9dcda9 d3d: Remove the format from index buffers. 2009-04-09 16:28:25 +02:00
Stefan Dösinger f0efa97413 wined3d: Remove the buffer fvf. 2009-04-09 16:28:10 +02:00
Stefan Dösinger 513a493f00 wined3d: Merge IWineD3DIndexBuffer and IWineD3DBuffer. 2009-04-08 11:37:29 +02:00
Stefan Dösinger bc07ad0579 d3d8, d3d9: Don't rely on the wined3d buffer type. 2009-04-08 11:35:29 +02:00
Henri Verbeet fd3d769a12 d3d9: Fix locking.
It appears there are some calls to wined3d missing critical sections.
2009-03-23 14:08:03 +01:00
Henri Verbeet 09f21f3fd8 d3d9: Improve IDirect3DDevice9::SetFVF() code flow. 2009-03-06 15:38:19 +01:00
Henri Verbeet aa3027a604 wined3d: Merge IWineD3DVertexBuffer with IWineD3DBuffer.
That still leaves IWineD3DIndexBuffer, but that code is also mostly similar,
except for the conversion code (which will be unused there).
2009-03-06 15:35:58 +01:00
Henri Verbeet 702eeb6b0c wined3d: Add separate methods for setting the primitive type. 2009-03-05 16:16:25 +01:00
Henri Verbeet 602bb1f551 wined3d: Pass the vertex count rather than the primitive count to wined3d draw methods. 2009-03-05 16:16:24 +01:00
Henri Verbeet 0048a0373b d3d10core: Keep a reference to the wined3d device in the d3d10 device. 2009-02-23 12:20:29 +01:00
Henri Verbeet 8cefc47d81 wined3d: Add DXGI formats to WINED3DFORMAT. 2009-02-20 11:10:37 +01:00
Henri Verbeet 61a9efc4b9 d3d9: Explicitly convert between D3DFORMAT and WINED3DFORMAT values. 2009-02-20 11:10:14 +01:00
Michael Stefaniuc bca813a5a6 d3d9: Remove superfluous pointer casts. 2009-01-29 14:06:18 +01:00
Marcus Meissner ace65a527f d3d9: Initialize hr (Coverity). 2009-01-28 12:10:28 +01:00
Henri Verbeet 9e7b5676a7 d3d9: Remove some superfluous pointer casts. 2009-01-20 12:34:12 +01:00
Henri Verbeet e6babd8367 d3d9: Properly test for dynamic usage in device_parent_CreateSurface(). 2009-01-16 13:29:57 +01:00
Henri Verbeet a966293f59 wined3d: Add an IWineD3DDeviceParent interface.
Other than being a bit nicer than passing function pointers all over the
place, this helps dxgi/d3d10. While the swapchain itself is created in dxgi,
its surfaces are constructed in d3d10core, which makes it impractical for dxgi
to pass the appropriate function pointers.
2009-01-16 13:29:32 +01:00
Henri Verbeet 352e60e6ed d3d: Explicitly translate texture stage states.
Ddraw and d3d8 already translate half of them, it turns out the lookup
table actually saves lines there.
2009-01-06 12:45:32 +01:00
Henri Verbeet a394dbec13 d3d9: Release the vertex declaration once we're done with it. 2008-12-29 12:16:27 +01:00
Henri Verbeet 0fb3cb9314 d3d9: Don't crash in GetFVF() if a NULL vertex declaration is set. 2008-12-24 19:57:51 +01:00
Henri Verbeet 4adb342327 wined3d: Remove GetFVF() and SetFVF() from IWineD3DDevice. 2008-12-17 14:02:03 +01:00
Alexandre Julliard 8eccb01a47 d3d9: Make some functions static. 2008-12-04 12:47:04 +01:00
Francois Gouget 1c87e4664f d3d9: Remove WINAPI on static functions where not needed. 2008-11-24 14:33:06 +01:00
Francois Gouget 001288ecae d3d9: Remove IDirect3DDevice9Impl_GetFrontBuffer() as it is unused. 2008-11-24 14:33:02 +01:00
Stefan Dösinger 40c06ea296 d3d9: Add a test for GetTexture with no texture set. 2008-11-04 11:41:20 +01:00