1
0
mirror of https://github.com/doitsujin/dxvk.git synced 2024-12-14 00:48:44 +01:00
Commit Graph

3240 Commits

Author SHA1 Message Date
Andrew Eikum
a3065fca8e [d3d11] Extend interop interfaces for OpenXR support 2021-01-07 23:54:02 +01:00
Robin Kertels
60a2aeb6ef [d3d9] End query before the stall heuristic flush 2021-01-07 21:19:28 +00:00
Robin Kertels
0f933fee8b [d3d9] Extend query stall tracking to other query types 2021-01-07 21:19:28 +00:00
Robin Kertels
6554ca8f9e [d3d9] Cache query data 2021-01-07 21:19:28 +00:00
gofman
5852e318e5
[d3d11] Fix device ref counting from queries. (#1887)
Fixes AO Tennis 2 crash on exit.

Co-authored-by: Paul Gofman <pgofman@codeweavers.com>
2021-01-06 20:10:44 +01:00
oltolm
f337ad3c05
fix d3d11 header for MinGW 9 (#1883) 2021-01-04 00:52:43 +01:00
PendingChaos
f39472a9ba
[util] Set invariantPosition for Devil May Cry 5 (#1863)
Fixes some missing/shifting geometry on GFX10.3 and RADV/ACO.

Tested using dxvk.conf and DXVK 1.7.3.

Signed-off-by: Rhys Perry <pendingchaos02@gmail.com>
2021-01-02 10:42:33 +01:00
Jason Bagavatsingham
05f4b1bb3c
[util] Set enableRtOutputNaNFixup for Empire of Sin (#1858)
Co-authored-by: Jason Bagavatsingham <jason.bagavtsingham@gmail.com>
2021-01-02 10:42:26 +01:00
Samuel Pitoiset
d0d1d99537
[util] set enableRtOutputNanFixup for VRChat (#1872)
Fixes rendering issues with RADV.

Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
2021-01-01 23:07:11 +01:00
Robin Kertels
ea13a68678 [util] Enable apitrace mode for Everquest 2020-12-26 17:37:07 +00:00
Robin Kertels
56399e49d1 [util] Enable apitraceMode for Tomb Raider Legend 2020-12-14 16:51:19 +00:00
Robin Kertels
6a54d86f25 [d3d9] Implement apitraceMode option 2020-12-14 16:51:19 +00:00
Robin Kertels
4b6632764f Revert "[d3d9] Only use DEVICE_LOCAL memory for small dynamic buffers"
This reverts commit f3a82a0bcc.

Apparently this makes other games slower. We need a different solution for TR: Legend.
2020-12-14 16:51:19 +00:00
Joshua Ashton
65635b23c1 [d3d9] Always slightly bias viewport, regardless of size
Since we got TRUNC_COORD on RADV, we always need to bias this now.

Closes: #1854
2020-12-14 03:51:49 +00:00
PendingChaos
495b2a098e
[util] Set invariantPosition for Monster Hunter World (#1850)
Fixes flickering on GFX10.3 with RADV/ACO.
2020-12-11 18:51:10 +01:00
Philip Rebohle
03f11baf57
[hud] Fix up nonsensical scaling factors 2020-12-06 01:03:01 +01:00
Philip Rebohle
74abb5bb80
[hud] Initialize scale to 1
See #1843.
2020-12-06 00:48:48 +01:00
Philip Rebohle
854ae7b862
[dxvk] Add transform feedback buffer usage to dummy buffer
Silences some Vulkan validation errors.
2020-12-06 00:35:29 +01:00
Philip Rebohle
0b4e167fc9
[hud] Fix typo 2020-12-02 17:13:41 +01:00
Philip Rebohle
b67639bdf0
[meta] Release 1.7.3 2020-12-02 16:14:56 +01:00
Philip Rebohle
6814ad45d4
[hud] Fix positioning of compiler item when scaled 2020-12-02 16:14:56 +01:00
Philip Rebohle
a23be756d7
[hud] Implement HUD scaling
Can be set like DXVK_HUD=fps,scale=1.5.
2020-12-01 03:31:22 +01:00
Philip Rebohle
8fe3effb40
[hud] Draw lines as triangle strip 2020-12-01 03:31:22 +01:00
Philip Rebohle
0ce5dd8b03
[dxvk] Remove conditional rendering from backend
Was disabled anyway due to being broken on various drivers,
so let's get rid of it.
2020-11-30 19:18:26 +01:00
Philip Rebohle
34e730fe41
[d3d11] Remove predication-related code 2020-11-30 19:18:26 +01:00
Philip Rebohle
e79e8b9062
[dxvk] Increase queued command buffer limit to 18
May help when games upload a large number of resources
at once, at the cost of increased memory usage.
2020-11-27 12:22:08 +01:00
Philip Rebohle
c547039bef
[dxvk] Decide memory priority based on access flags rather than usage
Buffers used as shader resources are storage buffers as well,
and should not take priority over other read-only resources.
2020-11-27 12:20:55 +01:00
Joshua Ashton
5d8539672d [util] Fix config for EverQuest2 2020-11-27 06:27:01 +00:00
Joshua Ashton
bbfd6d0690 [util] Enable alpha test wiggle room for EverQuest 2
Fixes clothing being alpha tested incorrectly due to wonky interpolation on NVIDIA.

Game uses oC0 == 1.0f

My testing on NV shows the alpha test has a precision of 1/256 for all A8 and below formats, and around 1 / 2048 for A32F formats and 1 / 4096 for A16F formats (It makes no sense to me too) so anyway, we're just going to round this to a precision of 1 / 4096 and hopefully this should make things happy everywhere.

Closes: #1832
2020-11-26 12:16:33 +00:00
Joshua Ashton
09043ddd16 [dxso] Implement option for alpha test wiggle room 2020-11-26 12:15:03 +00:00
Philip Rebohle
538b55921e
[dxbc] Conditionally return zeroes for unbound textures in shader
May allow the driver to optimize away texture operations.
2020-11-24 18:39:20 +01:00
Philip Rebohle
45461ee54e
[dxbc] Use opSelect for unbound texel fetch instructions
Generates less annoying code compared to control flow instructions,
and drivers should be able to optimize away the texture instruction
anyway since the bound state is a specialization constant.
2020-11-24 18:36:40 +01:00
Philip Rebohle
5e5937baf4
[dxvk] Pass size of 0 for dummy vertex buffer
Silences some validation errors in case null descriptors are disabled.
2020-11-24 17:50:14 +01:00
Joshua Ashton
6a63f4af56 [d3d9] Enable null descriptors for D3D9 2020-11-24 16:17:36 +00:00
Philip Rebohle
3cf7d65789
[hud] Use textureLod in fragment shader
Should silence some validation errors.
2020-11-24 17:07:22 +01:00
Joshua Ashton
c282ec7976 [dxso] Handle extraneous writemasks in matrix ops 2020-11-24 15:58:21 +00:00
Philip Rebohle
f74071ac0a
[d3d11] Support different strides for merged indirect draws
Trine 4 uses a stride of 32 bytes. Detecting the stride dynamically
allows us to merge a couple of draws in this game, and others which
do not tightly pack their draw parameter buffers.
2020-11-21 05:39:05 +01:00
Philip Rebohle
bf4465f5a2
[dxvk] Increase query pool sizes
Some games create hundreds of timestamp queries, we want to reduce
the number of pools in that case.
2020-11-21 03:35:41 +01:00
Philip Rebohle
d256175981
[dxvk] Eliminate back-to-back clears when no render pass is active
Trine 4 hits this with a multisampled depth buffer multiple times
per frame. Previously, we'd only eliminate redudant clears if the
render target to clear was active in the current render pass.
2020-11-21 03:03:15 +01:00
Philip Rebohle
61a07fc9b9
[dxbc] Fix up incorrect infinity returned by f32tof16
Completely insane fix for #1826.
2020-11-21 01:25:03 +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
Shawn M. Chapla
7ef6132cf0
[util] Use nvapiHack by default for Far Cry Primal (#1821)
Remove nvapiHack=False default override for Far Cry Primal as the game
is unplayable without an nvapi implementation and appears to now perform
fine with nvapiHack.

Co-authored-by: Shawn M. Chapla <schapla@codeweavers.com>
2020-11-18 10:12:40 +01:00
Joshie
6a10c81d4b
[d3d11] Define ordinals for exports (#1812) 2020-11-11 16:54:36 +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
f81395c742
[dxbc] Fix operand modifiers on 64-bit types 2020-10-22 12:43:04 +02:00
Philip Rebohle
7b9644f355
[meta] Release 1.7.2 2020-10-07 17:41:54 +02:00
Philip Rebohle
1863c6e81c
[dxvk] Catch exceptions of type DxvkError on CS thread 2020-10-07 16:33:48 +02:00
Philip Rebohle
0b011ea361
[dxvk] Throw error in case a pipeline layout uses too many bindings 2020-10-07 16:33:48 +02:00