Commit Graph

4247 Commits

Author SHA1 Message Date
Robin Kertels d598fd3156 [d3d9] Add HUD item for unmappable memory 2022-07-29 13:14:33 +01:00
Robin Kertels c3dbb6429f [d3d9] Implement memory allocator for memory mapped files 2022-07-29 13:14:33 +01:00
Robin Kertels 08ad6583ea [d3d9] Only set upload bit for managed textures
Otherwise D3DPOOL_DEFAULT can hit the draw time late
upload path.
2022-07-29 13:14:33 +01:00
Robin Kertels ba4d95c5fc [d3d9] Remove direct upload path
And remove some tracking that will no longer be necessary.
2022-07-29 13:14:33 +01:00
Robin Kertels 45c1d7911e [d3d9] Remove evictManagedOnUnlock
This is annoying to maintain and hopefully won't be necessary anymore.
2022-07-29 13:14:33 +01:00
Robin Kertels 116feca6af [d3d9] Handle unbound textures in fixed function shaders 2022-07-28 14:56:28 +00:00
Philip Rebohle 6c5f73ac26
[dxvk] Reintroduce VkPhysicalDeviceIDProperties
We need this to get the device LUID. Wine does not fill in the
LUID properties in VkPhysicalDeviceVulkan11Properties right now.

Fixes DLSS not working, as well as other potential issues.
2022-07-26 22:38:33 +02:00
Philip Rebohle 5fe04eb6ac
[dxvk] Fix weird indentation
how did this happen
2022-07-26 02:40:30 +02:00
Blisto91 b06140af47 [util] set maxFrameLatency to 1 for YS Origin 2022-07-25 16:20:28 +02:00
Philip Rebohle 08da6d8ca4
[dxbc] Bound-check mip level for resinfo instruction 2022-07-25 15:58:55 +02:00
Krzysztof Dobrowolski abf5ed154f [dxvk] Add Direct3D9ForceHybridEnumeration empty export function. 2022-07-25 12:04:27 +00:00
Philip Rebohle b67d5c8c1d
[util] Correctly mark flag register as clobbered 2022-07-24 17:30:54 +02:00
Philip Rebohle 41ec5d2c52
[dxvk] Avoid bsf instruction
It's very slow compared to tzcnt on some CPUs, and we have a working fallback.
2022-07-24 15:24:00 +02:00
Philip Rebohle 9cd0473544
[util] Set ignoreGraphicsBarriers option for Stray 2022-07-23 21:21:22 +02:00
Philip Rebohle 9d8484f2e9
[dxvk] Use synchronization2 functions for timestamp queries
Again not really making use of the new stage flags, but might as well
call the function. Oversight from earlier changes.
2022-07-23 15:32:59 +02:00
Blisto91 cb291f29a1 [util] enable alphaTestWiggleRoom for Ninja Blade 2022-07-23 13:02:53 +00:00
Blisto91 f2d4455cdf [util] enable dialog mode for NFS 3 modern patch 2022-07-22 19:47:44 +02:00
Derek Lesho 8fefb099d7 [d3d11] Add support for shared ID3D11Fence resources 2022-07-21 23:39:31 +02:00
Derek Lesho a3548f8043 [dxvk] Add shared handle access to DxvkFence 2022-07-21 23:39:31 +02:00
Derek Lesho a8e573b9b8 [dxvk] Enable VK_KHR_external_semaphore_win32 if available 2022-07-21 23:39:31 +02:00
Philip Rebohle dcd2c4847b
[d3d11] Implement ID3D11Fence
No interop support just yet.

Co-authored-by: Derek Lesho <dlesho@codeweavers.com>
2022-07-21 02:15:16 +02:00
Philip Rebohle 05a827703b
[dxvk] Add fence support to command list
Co-authored-by: Derek Lesho <dlesho@codeweavers.com>
2022-07-21 02:14:59 +02:00
Philip Rebohle 4167e1b887
[dxvk] Refactor queue submission info
Co-authored-by: Derek Lesho <dlesho@codeweavers.com>
2022-07-21 02:14:59 +02:00
Philip Rebohle 446ec07f3b
[dxvk] Add DxvkFence
Co-authored-by: Derek Lesho <dlesho@codeweavers.com>
2022-07-21 02:14:59 +02:00
Philip Rebohle a40724aaf8
[dxvk] Add timeline semaphore entry points
Co-authored-by: Derek Lesho <dlesho@codeweavers.com>
2022-07-21 02:14:53 +02:00
Philip Rebohle ec813e036c
[dxbc] Fix UAV write test
We broke this during the null descriptor refactor. Also make it so that
we don't generate conditionals when there's nothing to test.
2022-07-20 22:56:32 +02:00
Philip Rebohle 779f8b39cd
[spirv] Track currently active block ID 2022-07-20 22:38:03 +02:00
Philip Rebohle a178c57aea
[dxvk] Remove barrier argument from render target transition functions
We're always using the same barrier set anyway.
2022-07-20 16:57:27 +02:00
Philip Rebohle 16eae7adde
[dxvk] Allow resetting the state cache using the DXVK_STATE_CACHE env var 2022-07-20 13:58:50 +02:00
Kassin Dornelles 75d0b1af96 [util] Remove Resident Evil 6 workaround
It's actually making things worse, so better use the default path
2022-07-20 12:00:13 +02:00
Philip Rebohle 2d93760002
[dxvk] Clarify feature enablement
And fall back to robustImageAccess if robustImageAccess2 is not supported.
Not what we want, but better than nothing.
2022-07-19 19:08:58 +02:00
Philip Rebohle fc796abede
[dxvk] Bump engine version reported to the Vulkan driver
Might help with Fossilize stuff.
2022-07-19 15:27:18 +02:00
Philip Rebohle 0ba741b7d2
[dxvk] Use copy_commands2 functions for buffer <-> image copies 2022-07-19 15:16:54 +02:00
Philip Rebohle 23846ad577
[dxvk] Use copy_commands2 functions for image copies 2022-07-19 15:16:54 +02:00
Philip Rebohle dc1d82deff
[dxvk] Use copy_commands2 functions for buffer copies 2022-07-19 15:16:54 +02:00
Philip Rebohle f39d49772d
[dxvk] Use copy_commands2 functions for image resolves
Same idea as with blits, don't expose VkImageResolve2.
2022-07-19 14:10:47 +02:00
Philip Rebohle ff81323228
[dxvk] Use copy_commands2 functions for image blits
Don't expose VkImageBlit2 to client APIs since we can't easily
support pNext chains, so just convert the struct internally.
2022-07-19 13:53:28 +02:00
Philip Rebohle 563b1d7801
[dxvk] Add entry points for copy_commands2 2022-07-19 13:49:01 +02:00
Philip Rebohle 330ff8fa48
[dxvk] Use synchronization2 functions for queue submissions 2022-07-19 02:27:31 +02:00
Philip Rebohle 0c79882e84
[dxvk] Use synchronization2 functions for events 2022-07-19 02:27:31 +02:00
Philip Rebohle adb906b18c
[dxvk] Use synchronization2 functions for barriers
We don't really use the new stage/access flags yet, and I'm not sure
whether we will move to them since the benefits seem rather limited.
However, using the functions means we can bypass a lot of internal
translation inside some Vulkan drivers.
2022-07-19 02:27:31 +02:00
Philip Rebohle 0d65142136
[dxvk] Add entry points for new synchronization API 2022-07-18 22:49:49 +02:00
Philip Rebohle 17205f5353
[dxvk] Fix formatting in barrier function 2022-07-18 22:49:47 +02:00
Blisto91 e28b268351 [util] Enable disableMsaa option for Mary Skelter 2 2022-07-18 22:17:13 +02:00
Philip Rebohle e6df48fa3e
[dxvk] Fix a derp 2022-07-18 14:53:29 +02:00
Philip Rebohle a76b5693f3
[dxvk] Clean up remaining object creation code 2022-07-18 14:52:12 +02:00
Philip Rebohle 9ebeb8e502
[dxvk] Clean up instance creation code a bit 2022-07-18 14:51:40 +02:00
Philip Rebohle a1ace8ef21
[dxvk] Clean up misc. code 2022-07-18 14:51:26 +02:00
Philip Rebohle 37f31ae1e7
[dxvk] Clean up more code around object creation in meta passes 2022-07-18 14:50:29 +02:00
Philip Rebohle fc461d0e27
[dxvk] Clean up some swapchain creation code 2022-07-18 14:49:28 +02:00