Zhiyi Zhang
8147844aef
[dxgi] Return DXGI_ERROR_INVALID_CALL for invalid IDXGIAdapter3::RegisterVideoMemoryBudgetChangeNotificationEvent() parameters
...
According to wine tests 14237e321b
Signed-off-by: Zhiyi Zhang <zzhang@codeweavers.com>
2022-05-25 18:44:20 +02:00
Philip Rebohle
a85f7c48a5
[d3d11] Make ClearUnorderedAccessViewUINT fallback more generic
2022-04-25 17:34:45 +02:00
Philip Rebohle
8823e4bb3d
[dxgi] Work around swapchain use-after-free bugs
...
Affects Divinity: Original Sin Enhanced Edition. Requires Wine hack to
delay memory deallocation to not crash during resolution changes.
2022-03-23 15:09:39 +01:00
Georg Lehmann
2550cff149
[build] Cleanup build system.
...
No changes except dropping support for msvc before 15.3.
2022-03-17 01:38:58 +00:00
Liam Middlebrook
f92c6ae859
[dxgi] Add DXVK_ENABLE_NVAPI envvar
...
Add a new environment variable DXVK_ENABLE_NVAPI as an environment-level
override for 'nvapiHack'. This will allow for DLSS (and other
NvAPI-backed features) to be available without the user manually writing
a configuration file, allowing for more seamless integration with
Proton's launch script.
2022-03-16 13:06:25 +01:00
Philip Rebohle
c87660480d
[d3d11] Reimplement R11G11B10 UAV clears without R32 views
2022-03-12 16:23:42 +01:00
Philip Rebohle
b53c3057e1
[dxgi] Fix refresh rate filtering in FindClosestMatchingMode
...
We need to operate on the pre-filtered list, or otherwise we may run into
problems where not all refresh rates are supported for all display modes.
2022-01-10 14:45:19 +01:00
Philip Rebohle
b6cd6aaecc
[d3d11] Fix depth aspect not being applied to some D16_UNORM views
2021-11-29 15:39:41 +01:00
Paul Gofman
24eb875f02
[dxgi] Return success from DxgiSwapChain::Present1() if window is destroyed
2021-10-07 20:34:37 +02:00
Philip Rebohle
aa4b7c9f92
[dxvk] Rework 32-bit check
2021-10-01 14:18:42 +02:00
Georg Lehmann
8844dc2091
[dxgi] Downgrade format fall back warnings to info
2021-08-09 13:17:43 +02:00
Connor Abbott
aae0e57a46
Don't add def file as an object
...
This is unnecessary even on mingw, and leads to duplicating the .def
file on the linking command line which winegcc complains about.
2021-07-03 14:28:28 +02:00
Connor Abbott
2988875e93
[dxgi] Call QueryPerformanceCounter directly
...
dxvk::high_resolution_clock is meant to be a wrapper around the C++ time
library, and getCounter() is (AFAIK) an internal thing so calling it
directly is odd. On winelib this redirects to the host's implementation,
which means this fails to compile. Since this is a Windows API and not
for internal usage just call the Windows API function directly.
2021-07-03 14:28:28 +02:00
Philip Rebohle
cd8a2bcfcd
[dxvk] Use custom sync primitives
2021-06-29 00:51:20 +02:00
Philip Rebohle
6044e63eb0
[dxgi] Notify presenter about display mode changes
2021-06-12 13:50:08 +02:00
Philip Rebohle
e281eee795
[dxgi] Add NotifyModeChange method to IDXGIVkSwapChain
2021-06-12 13:50:08 +02:00
Joshua Ashton
15e0594ec4
[dxgi] Add emulateUMA option
...
Some games think we are on Intel given a lack of NVAPI or AGS/atiadlxx support. Report our device memory as shared memory, and some small amount for a "carveout".
2021-06-01 19:26:41 +02:00
Joshua Ashton
1d4c540b21
[dxgi] Add custom device description option
2021-06-01 19:26:41 +02:00
Philip Rebohle
0af7229b8e
[util] Restore display modes of all monitors in RestoreMonitorDisplayMode
...
Fixes #2064 .
2021-06-01 01:48:12 +02:00
Philip Rebohle
2764f4abb5
[dxgi] Add format mapping for DXGI_FORMAT_AYUV
2021-05-30 19:42:43 +02:00
Philip Rebohle
d859361a37
[dxgi] Add format mapping for DXGI_FORMAT_YUY2
...
And fix some existing 422 mappings.
2021-05-30 19:42:43 +02:00
Philip Rebohle
9b236078c2
[dxgi] Add format mapping for DXGI_FORMAT_NV12 and DXGI_FORMAT_420_OPAQUE
2021-05-30 19:42:43 +02:00
Joshua Ashton
c51080068e
[dxgi] Handle DXGI_PRESENT_TEST and failures in GetFrameStatistics
2021-05-20 23:02:07 +01:00
Philip Rebohle
401edc53fe
[dxgi] Show warning in DxgiOutput::GetFrameStatistics
2021-05-20 22:27:36 +01:00
Philip Rebohle
db3654a07f
[dxgi] Implement present count and frame statistics for swap chains
2021-05-20 22:27:36 +01:00
Joshua Ashton
a690210eae
[dxgi] Implement swapchain dispatcher
...
Some overlays and hooks check if the vtable funcs reside in the dxgi.dll module.
Fixes : #1996
2021-03-30 17:48:10 +02:00
Joshua Ashton
0367bf95c4
[build] MSVC check cleanup
2021-03-03 18:57:42 +01:00
Philip Rebohle
148272fbce
[d3d11] Use DxvkSwapchainBlitter for presentation
2021-02-27 14:54:14 +00:00
Philip Rebohle
5d4d32c613
[d3d11] Remove explicit spec constant for gamma texture
...
No longer needed.
2021-02-21 02:20:14 +01:00
Philip Rebohle
fe5e215dfc
[dxgi] Support multiple outputs per adapter
2021-02-18 14:19:55 +01:00
Philip Rebohle
01a511aa99
[dxvk,dxgi,d3d9] Fix shader spec constant IDs
...
These changed after changing the render target output swizzle stuff.
2021-01-29 16:46:01 +01:00
Joshie
dde28a967f
[d3d11] Fix forward declaration of ID3D11Texture2D
...
This should be struct not class.
Silences warnings in MSVC.
2021-01-08 13:06:02 +01:00
Andrew Eikum
a3065fca8e
[d3d11] Extend interop interfaces for OpenXR support
2021-01-07 23:54:02 +01:00
Philip Rebohle
d0cdd79dd2
[dxgi] Allow creating R16_SFLOAT views for D16_UNORM images
...
Just use R16_UNORM. For some reason, D3D11 actually allows this, and
Trine 4 wants the corresponding calls to succeed, although we're going
to interpret the data as UNORM rather than FLOAT.
2020-11-20 17:14:41 +01:00
Philip Rebohle
13052d4949
[dxgi] Actually expose new DXGI interfaces
...
Derp.
2020-10-24 17:41:55 +02:00
Philip Rebohle
54a4e91dad
[dxgi] Implment IDXGIFactory7
2020-10-23 12:21:02 +02:00
Philip Rebohle
a7de355646
[dxgi] Implement IDXGIFactory6
2020-10-23 12:15:48 +02:00
Philip Rebohle
41a49a9c14
[dxgi] Add B8G8A8X8 formats to GetMonitorFormatBpp
...
Doesn't really fix anything, just silences some warnings
in Horizon Zero Dawn.
2020-09-04 17:54:01 +02:00
Philip Rebohle
cb7f1dc966
[dxgi] Use VK_FORMAT_A4R4G4B4_UNORM_PACK16_EXT if available
2020-08-10 09:45:45 +02:00
Philip Rebohle
3322da4b94
[dxgi] Add DXGIGetDebugInterface1 stub
...
Required for Metro Exodus. Also exports the DXGI entry points
with their correct ordinals.
2020-07-24 12:25:48 +02:00
Gabriel Ivăncescu
1efe91e17d
[dxgi] Restore the Topmost state upon exiting fullscreen
...
Signed-off-by: Gabriel Ivăncescu <gabrielopcode@gmail.com>
2020-07-08 18:57:49 +02:00
Philip Rebohle
f1e069568d
[build] Remove .spec files
...
No longer needed now that we don't support winelib builds anymore.
2020-05-01 00:52:33 +02:00
Philip Rebohle
80009831d4
[d3d11] Use explicit spec constant for gamma texture
...
With null descriptors, the "bound" spec constants would always be 1.
2020-04-30 16:36:59 +02:00
Philip Rebohle
ca59d8e74b
[dxgi] Implement DXGIDeclareAdapterRemovalSupport
2020-04-28 15:20:43 +02:00
Philip Rebohle
5d0efd87c2
[dxgi] Implement IDXGIOutput6
2020-04-28 15:00:57 +02:00
Philip Rebohle
15f5efe4c3
[dxgi] Implement IDXGIAdapter4
2020-04-28 14:50:36 +02:00
Philip Rebohle
26ea12b18e
[dxgi] Include DXGI 1.6 headers
2020-04-28 14:44:20 +02:00
Philip Rebohle
4d6f47640f
[dxgi] Name adapter event thread
2020-04-03 02:09:06 +02:00
Philip Rebohle
079cda1c0c
[dxgi] Implement RegisterVideoMemoryBudgetChangeNotificationEvent
...
Closes #1544 .
2020-04-03 02:05:23 +02:00
Philip Rebohle
a623e8e7d6
[dxgi] Use new common monitor functions
2020-03-04 23:06:15 +00:00