Commit Graph

71 Commits

Author SHA1 Message Date
Henri Verbeet 8ba075a059 dxgi: Introduce the IWineDXGISwapChainFactory interface.
The basic idea is that a project like vkd3d could provide its own
implementation of the IWineDXGISwapChainFactory interface, and so wouldn't
need specific handling in dxgi_factory_CreateSwapChainForHwnd().

Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-12-04 16:13:41 +01:00
Józef Kucia e36af9284f dxgi: Factor out dxgi_validate_swapchain_desc().
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-09-18 20:59:38 +02:00
Józef Kucia 79a189b9ad dxgi: Forbid multisampling with flip swap effects.
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-05-30 22:26:49 +02:00
Józef Kucia cc07f20965 dxgi: Use DXGI_MAX_SWAP_CHAIN_BUFFERS.
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-05-30 22:26:49 +02:00
Józef Kucia d0126f2631 dxgi: Add FIXME() for ignored output parameter in dxgi_factory_CreateSwapChainForHwnd().
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-05-30 22:26:49 +02:00
Józef Kucia 7d99d74572 dxgi: Add IDXGISwapChain3 interface stub for D3D12.
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-05-28 22:08:23 +02:00
Józef Kucia 02c49ea3c0 dxgi: Factor out d3d11_swapchain_create() function.
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-05-28 22:08:23 +02:00
Józef Kucia 81459fb8a2 wined3d: Remove swap interval from swapchain description.
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-03-22 18:14:55 +01:00
Józef Kucia e318f8c825 wined3d: Replace presentation interval flags with enum.
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-03-12 17:58:16 +01:00
Henri Verbeet d612495a72 dxgi: Translate swap effects in dxgi_factory_CreateSwapChainForHwnd().
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-02-15 08:02:14 +01:00
Józef Kucia cd29ee158a dxgi: Implement IDXGIFactory5.
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-02-14 20:37:55 +01:00
Henri Verbeet c1cf16189f dxgi: Use the global memory allocation helpers.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-02-06 12:58:58 +01:00
Francois Gouget 3000ac56ed dxgi: Fix a trailing '\n' in a FIXME().
Signed-off-by: Francois Gouget <fgouget@free.fr>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-02-01 22:24:58 +01:00
Józef Kucia 7f593aa725 dxgi: Implement IDXGIAdapter3.
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-01-30 20:42:07 +01:00
Józef Kucia 7e72c2d4ac dxgi: Require window when creating swapchain.
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-01-30 20:42:07 +01:00
Józef Kucia e0c76efcbb dxgi: Add FIXME messages for unhandled DXGI_SWAP_CHAIN_FULLSCREEN_DESC fields.
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-01-30 20:42:07 +01:00
Józef Kucia c1f5d39604 dxgi: Allow wrapping factory objects.
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-01-29 19:29:37 +01:00
Józef Kucia f46b3adc09 dxgi: Stop ignoring buffer usage.
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-01-25 16:27:13 +01:00
Józef Kucia 4701425f3c wined3d: Add buffer usage to wined3d_swapchain_desc.
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-01-25 16:27:10 +01:00
Józef Kucia c3cb2e6caa dxgi: Implement dxgi_factory_EnumAdapterByLuid().
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-01-24 21:31:17 +01:00
Józef Kucia f2d8491ed9 dxgi: Update to IDXGIFactory4.
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-01-19 19:45:14 +01:00
Józef Kucia 729baa8a91 dxgi: Implement dxgi_factory_CreateSwapChainForHwnd().
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-01-19 19:45:12 +01:00
Józef Kucia f99a548148 dxgi: Update to IDXGIFactory2.
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-01-19 19:45:07 +01:00
Józef Kucia 537bd43ea8 dxgi: Implement IDXGISwapChain_ResizeTarget().
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-05 09:07:56 -05:00
Józef Kucia 8d032351f2 wined3d: Add WINED3D_SWAPCHAIN_ALLOW_MODE_SWITCH flag.
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-03 09:56:17 -05:00
Józef Kucia eb039240e5 dxgi: Do not store IDXGIAdapters in IDXGIFactory.
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-04-15 01:14:24 +09:00
Józef Kucia b835a35881 dxgi: Do not store IDXGIOutputs in IDXGIAdapter.
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-04-15 01:14:23 +09:00
Józef Kucia 282afc4450 dxgi: Implement dxgi_swapchain_GetDevice().
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-04-12 22:22:58 +09:00
Józef Kucia a36ae03c9f dxgi: Return S_OK in dxgi_factory_MakeWindowAssociation() stub.
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-02-12 23:07:29 +09:00
Stefan Dösinger a971d4f2f6 dxgi/tests: Test DXGI_SWAP_EFFECT_FLIP_DISCARD.
Signed-off-by: Stefan Dösinger <stefan@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-11-26 00:12:52 +09:00
Józef Kucia 2a1186db19 dxgi: Add locking around remaining wined3d calls. 2015-09-18 14:57:50 +02:00
Józef Kucia 0eefb93535 dxgi: Replace dxgi_cs with wined3d_mutex. 2015-09-18 14:57:46 +02:00
Stefan Dösinger f805fb11f6 dxgi/tests: Test presentation parameter combinations. 2015-08-28 19:52:45 +09:00
Henri Verbeet fbc8f59629 dxgi: Introduce a helper function to convert dxgi multisample info to wined3d. 2015-08-06 23:36:01 +09:00
Henri Verbeet eb27944e78 dxgi: Initialize auto_restore_display_mode in dxgi_factory_CreateSwapChain() (Valgrind). 2015-04-30 16:17:46 +09:00
Henri Verbeet 00daa8bc64 dxgi: Implement dxgi_factory_GetPrivateData(). 2015-02-16 20:30:59 +09:00
Henri Verbeet b315932010 dxgi: Implement dxgi_factory_SetPrivateDataInterface(). 2015-02-16 20:30:37 +09:00
Henri Verbeet 49ad383e89 dxgi: Implement dxgi_factory_SetPrivateData(). 2015-02-13 18:53:26 +09:00
Marcus Meissner fec49d1182 dxgi: Added missing unlock (Coverity). 2014-09-23 13:01:47 +02:00
Henri Verbeet 810977446a dxgi: Call wined3d_device_init_3d() on device creation. 2014-09-15 12:12:51 +02:00
Henri Verbeet 72aaaac486 dxgi: Get rid of IWineDXGIFactory. 2014-09-15 12:12:43 +02:00
Henri Verbeet 22abd896fa dxgi: Get rid of IWineDXGIAdapter. 2014-09-15 12:12:41 +02:00
Henri Verbeet d3c6d3425f dxgi: Only use a single newline in the dxgi_factory_MakeWindowAssociation() FIXME. 2014-07-22 12:37:39 +02:00
Stefan Dösinger 938529e1f9 wined3d: Remove the version parameter. 2014-03-20 19:04:37 +01:00
Henri Verbeet a13a546573 dxgi: Implement CreateDXGIFactory1(). 2014-02-11 19:19:14 +01:00
Henri Verbeet 3d28b01916 dxgi: Implement IDXGIFactory1. 2014-01-28 10:53:50 +01:00
Henri Verbeet e9f9c15016 dxgi: Store IWineDXGIAdapter pointers in the factory. 2014-01-28 10:53:46 +01:00
Ričardas Barkauskas 342ce213e6 dxgi: Avoid division by zero.
Based on patch by Eduard - Gabriel Munteanu.
2012-09-25 11:20:17 +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 9267148705 wined3d: The wined3d object doesn't need a parent. 2012-05-03 11:18:00 +02:00