Philip Rebohle
200df73ba7
[util] Implement utility functions for string conversion
2022-07-30 20:30:32 +02:00
Robin Kertels
bad7d4690b
[d3d9] Handle very large Up draws
2022-07-30 20:29:31 +02:00
Philip Rebohle
2782afaf8a
[dxvk] Inline pushConstants method
...
No reason not to.
2022-07-30 17:52:55 +02:00
Philip Rebohle
94ca65d587
[dxvk] Ignore spec constants that are not used by the current pipeline
...
May reduce the number of pipeline permutations.
2022-07-30 17:42:46 +02:00
Philip Rebohle
47794b661e
[dxvk] Only pass requried spec constants when compiling compute pipelines
2022-07-30 16:00:28 +02:00
Philip Rebohle
b90f8819c6
[dxvk] Only pass required spec constants when compiling graphics pipelines
2022-07-30 15:54:38 +02:00
Philip Rebohle
80a58f000a
[dxvk] Generate bit mask of used spec constants in DxvkShader
...
This way we can more accurately track which constants are used, and not
pass any unnecessary data at compile time. We can extend this in the
future to also skip unused constants for pipeline lookups.
Also, any spec constant with the ID of MaxNumSpecConstants will be treated
as a spec constant selector. If the shader uses this constant, it is assumed
that it does not access any other spec constants if the value of this constant
is 0. This will allow shaders with spec constants to be used with pipeline
libraries.
2022-07-30 15:46:47 +02:00
Joshua Ashton
753aede1fc
[d3d9] Correct comment about ProjectionType
2022-07-30 12:34:18 +00:00
Joshua Ashton
1d1f0c7e7e
[d3d9] Document D3D9SpecConstantId
2022-07-30 12:30:33 +00:00
Robin Kertels
ea76bfd019
[d3d9] Unmap unused resources
2022-07-29 13:14:33 +01:00
Robin Kertels
b4f432f1de
[util] Implement LRU list
2022-07-29 13:14:33 +01:00
Robin Kertels
6ca6554452
[d3d9] Use memory mapped files for textures
2022-07-29 13:14:33 +01:00
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
Joshua Ashton
6425d2368b
[build] Use arch-mingw-github-action v8
...
Fixes generated version info.
2022-07-26 18:49:22 +01: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