1
0
mirror of https://github.com/doitsujin/dxvk.git synced 2024-12-11 19:24:11 +01:00
Commit Graph

5984 Commits

Author SHA1 Message Date
Robin Kertels
1d49f247ac [d3d9] Remove incorrect early-exit
The same texture could be bound to
multiple slots and if the shader doesn't
use the lower index texture, we'd never
end up uploading it.
2024-09-22 22:53:55 +02:00
Robin Kertels
ef8bad33a5 [d3d9] Optimize late buffer uploads
... similar to what we're doing for textures.
2024-09-22 22:53:55 +02:00
Blisto91
5a08b3c451 [util] Cap fps for F.E.A.R 1 & expansions
Visual glitches can occur at very high fps
2024-09-22 21:07:08 +02:00
Robin Kertels
04ad98690b [d3d9] Add SWVP HUD item 2024-09-22 21:03:23 +02:00
Robin Kertels
033104f335 [d3d9] Cleanup buffer memory flag selection 2024-09-22 21:03:23 +02:00
Robin Kertels
5bb8d09a96 [d3d9] Always use per-draw buffer uploads on pure SWVP devices 2024-09-22 21:03:23 +02:00
WinterSnowfall
97fb6e4f6d [d3d9] Clean up supported formats from GetUnsupportedFormatInfo 2024-09-22 20:51:15 +02:00
WinterSnowfall
7985ac9cdb [d3d9] Add R16 and AL16 as known unsupported formats 2024-09-22 20:51:15 +02:00
Blisto91
e687303197 [util] Cap Prince of Persia (2008) max fps
Game can get stuck when loading at very high fps
2024-09-22 17:47:51 +02:00
Robin Kertels
07e7781c0b [d3d9] Only add meta image usage after determining layout 2024-09-22 15:48:18 +02:00
WinterSnowfall
c7cf0a7368 [d3d8] Respect D3DCREATE_MULTITHREADED and make d3d8 thread safe 2024-09-21 16:05:25 +02:00
Robin Kertels
c8791a6ba5 [d3d9] Don't emit 1-sized vector type in SWVP Emu
Fixes a validation error.
2024-09-20 12:57:11 +02:00
Robin Kertels
900edf55b5 [d3d9] Only create sampling image views if the image supports sampling
Fixes validation error
2024-09-20 12:57:11 +02:00
Robin Kertels
46e8161649 [d3d9] Enable shaderInt8 for ProcessVertices 2024-09-20 12:57:11 +02:00
Robin Kertels
828aaa5cdd [d3d9] Add missing TRANSFER_SRC usage for swapchain helper images 2024-09-20 12:57:11 +02:00
Philip Rebohle
43c27670ef [dxvk] Fix buffer view stuff again
Testing fallback paths that we only ever hit in scenarios without validation
output sure is fun....
2024-09-20 02:00:50 +02:00
Philip Rebohle
dd8af9da78 [dxvk] Fix buffer view derp systems not supporting maintenance5 2024-09-20 01:25:06 +02:00
Robin Kertels
80e950ac32 [util] Fix small_vector move
... again. We can only move over the ptr
if the other small_vector has MORE than N
elements, otherwise it will still use the local array.
2024-09-20 01:20:25 +02:00
Robin Kertels
2f9ce66879 [util] Fix small_vector move constructor 2024-09-19 20:56:09 +02:00
Philip Rebohle
398c198df6 [dxvk] Fix BDA validation error with dedicated allocations 2024-09-19 18:32:40 +02:00
Philip Rebohle
18ecc17e59 [dxvk] Remove unused discardBuffer method
Unused and not safe to use.
2024-09-18 15:55:57 +02:00
Philip Rebohle
c8410e578e [d3d11] Enable device address usage for non-mappable buffers
NVAPI queries the GPU address of certain resources in a way that could
break otherwise.
2024-09-18 15:55:57 +02:00
Philip Rebohle
fb552db65f [dxvk] Do not invalidate buffers that allow querying the device address 2024-09-18 15:55:57 +02:00
Philip Rebohle
ddb59ae394 [dxvk] Add usage property to buffer views
And pass it to the Vulkan driver depending on maintenance5 support.
2024-09-18 15:55:57 +02:00
Philip Rebohle
ab557a2eed [dxvk] Use global buffer whenever possible
Drastically reduces the number of Vulkan buffer objects allocated.
2024-09-18 15:55:57 +02:00
Philip Rebohle
901861c20b [dxvk] Create global buffer for allocated memory chunks 2024-09-18 15:55:57 +02:00
Blisto91
11ec603540 [util] Enable cachedDynamicBuffers for Battle Mages
Helps CPU bound performance
2024-09-18 00:25:05 +02:00
Paul Gofman
ed9ffa6584 [dxgi] Leave fullscreen mode when window looses focus 2024-09-18 00:19:56 +02:00
Paul Gofman
758dc805bb [dxgi] Prevent recursive fullscreen mode change. 2024-09-18 00:19:56 +02:00
WinterSnowfall
5cf0783edb [d3d8] Clean up D3D9 shaders on D3D8 device release 2024-09-17 19:45:18 +02:00
Robin Kertels
010738c107 [d3d9] Add HUD item for FF shaders 2024-09-17 18:30:27 +02:00
WinterSnowfall
89e190b771 [d3d8] Ensure d3d9 interface release 2024-09-17 18:30:00 +02:00
WinterSnowfall
84a8ea9d4a [d3d8] Remove some unneeded explicit ptr use 2024-09-17 18:30:00 +02:00
WinterSnowfall
9f8832dd14 [d3d8] Improve handling of failed d3d9 calls 2024-09-17 18:30:00 +02:00
Blisto91
f3fa4b102a [meta] Note DLLs need native override in readme 2024-09-17 02:08:28 +02:00
WinterSnowfall
0a2f2275da [d3d8] Add a framecap for Chrome: Gold Edition 2024-09-14 23:52:20 +02:00
Philip Rebohle
04cf0008a0 [dxvk] Correctly enable VK_EXT_line_rasterization
Oversight, and fixes a validation error.
2024-09-13 11:58:11 +02:00
WinterSnowfall
8e03b64ca4 [d3d8] Validate viewport dimensions on SetViewport 2024-09-12 16:39:40 +02:00
Robin Kertels
903f1af176 [d3d9] Fix PresentGDI 2024-09-12 15:39:21 +02:00
Kacper Michajłow
26a14c5175
[util] Fix GetEnvironmentVariableW usage 2024-09-12 00:04:49 +02:00
WinterSnowfall
3e26958906 [util] Add a framecap for Pandora Tomorrow 2024-09-12 00:02:34 +02:00
llyyr
1a1c3a4202 [d3d9,d3d11] recreate swapchain on VK_SUBOPTIMAL_KHR
The vulkan wayland wsi returns suboptimal when the window is
fullscreened and not directly scanned out, and there are modifiers
available that would allow the window to be directly scanned out.
Recreate the swapchain if we receive suboptimal result.

This allows us recreate the swapchain to use a modifier that allows
direct scan-out under winewayland on wayland compositors.
2024-09-11 16:38:26 +02:00
Philip Rebohle
c1a25df468 [dxvk] Fix some logic errors around sysmem chunk size 2024-09-11 15:21:03 +02:00
Philip Rebohle
565ec7e0d3 [dxvk] Remove dxvk.maxChunkSize option 2024-09-09 18:45:34 +02:00
Philip Rebohle
619b9b12c2 [dxvk] Implement dynamically growing chunk size
May reduce memory footprint for launchers.
2024-09-09 18:45:34 +02:00
WinterSnowfall
63506ee1ff [util] Enable cachedDynamicBuffers for Steel Soldiers and FIFA 2003 2024-09-08 19:26:46 +02:00
WinterSnowfall
22ff53013a [d3d8] Ignore unsupported D3DPRESENT_RATE_UNLIMITED 2024-09-08 19:25:16 +02:00
Billy Laws
9077e5212d [util] Use cdecl calling convention for __wine_dbg_output
This matches wine's definition, fixes crashes when wine is built with clang.
Since __cdecl isn't defined for non-windows targets ifdef this needs all
dbg callback uses to be ifdefed out.
2024-09-07 19:44:36 +02:00
Robin Kertels
daccde7643 [d3d9] Don't set IMAGE_USAGE_SAMPLED_BIT for non-msaa depth stencil surfaces 2024-09-04 22:17:10 +00:00
Robin Kertels
7f8cfec46f [d3d9] Always set IsAttachmentOnly for CreateOffscreenPlainSurfaceEx
Surfaces cannot be bound as textures.
2024-09-04 22:17:10 +00:00