1
0
mirror of https://github.com/doitsujin/dxvk.git synced 2025-02-24 13:54:17 +01:00

1012 Commits

Author SHA1 Message Date
WinterSnowfall
13554f18bd [d3d9] Update software cursor position using SetCursorPosition 2025-02-08 22:28:48 +01:00
WinterSnowfall
bd69d1efdc [d3d8/9] Use shader version macros where applicable 2025-02-02 18:17:10 +01:00
WinterSnowfall
dd5b28e557 [d3d8] Use D3D8 compatibilty mode to set HUD API level 2025-02-02 10:47:32 +01:00
WinterSnowfall
1d90772eb2 [d3d9] Report vertex texture filtering support only for SM3 2025-01-27 18:53:10 +01:00
WinterSnowfall
5b21286377 [d3d9] Adjust SM2 VS/PS caps 2025-01-26 21:52:18 +01:00
WinterSnowfall
ad0920fe1e [d3d9] Relax SM2 minor version checks on shader creation 2025-01-26 20:02:45 +01:00
WinterSnowfall
c6dc7e0939 [d3d8/9] Proper (and age accurate) handling of d3d9.shaderModel = 0 2025-01-26 13:56:27 +01:00
WinterSnowfall
d846e89a4b [d3d8] Improve handling of FullScreen_PresentationInterval 2025-01-26 13:50:41 +01:00
WinterSnowfall
4184452f49 [d3d8] Validate srcRect/destPoint dimensions in UpdateTextureFromBuffer 2025-01-26 13:50:41 +01:00
Philip Rebohle
539da5abdf [dxvk] Refactor CS chunk queues
Introduces two queues and allows us to dispatch chunks to the ordered
queue without disrupting the sequence number.
2025-01-25 18:02:20 +01:00
Philip Rebohle
4fcbf52752 [d3d9] Always limit to display refresh in low latency mode 2025-01-25 18:02:20 +01:00
Philip Rebohle
0e3ed707ba [d3d9] Implement latency tracking 2025-01-25 18:02:20 +01:00
Philip Rebohle
273e4abb14 [dxvk] Add latency tracker to queue submissions 2025-01-25 18:02:20 +01:00
Philip Rebohle
5ed2d990af [d3d9] Fix software cursor texture format
The new code expects texture reads to be in linear space, so we need
to use an sRGB format here.
2025-01-16 12:05:17 +01:00
Philip Rebohle
3dbe8ad43c [d3d9] Rework device reset detection
More robust.
2025-01-16 11:38:39 +01:00
Philip Rebohle
f9c3dd1f5f [d3d9] Remove explicit swapchain synchronization
No longer necessary.
2025-01-16 11:38:39 +01:00
Philip Rebohle
c43cf6895b [d3d9] Refactor presenter management
There's basically no reason to ever recreate a presenter for an already
managed window with the new code.
2025-01-16 11:38:39 +01:00
Philip Rebohle
0f9245ff33 [d3d9,d3d11] Remove numBackBuffers option
Useless.
2025-01-16 11:38:39 +01:00
Philip Rebohle
5134a4b3c5 [dxvk] Move HUD update and rendering into swapchain blitter 2025-01-16 11:38:39 +01:00
Philip Rebohle
d85d07c0ec [dxvk] Infer swap chain color space from image views 2025-01-16 11:38:39 +01:00
Philip Rebohle
1d790970d5 [d3d9] Set color space for swap chain image 2025-01-16 11:38:39 +01:00
Philip Rebohle
43838d3df8 [dxvk] Move Vulkan swapchain management to backend
Massive cleanup reduce code duplication between D3D11 and D3D9,
and introduce a sane path to pass data around. Implicit swap
chain recreation is now entirely transparent to the frontends.
2025-01-16 11:38:39 +01:00
Philip Rebohle
63e88debee [dxvk] Move deferSurfaceCreation handling to backend 2025-01-16 11:38:39 +01:00
Philip Rebohle
ab9646551f [dxvk] Import swap chain images from the back-end 2025-01-16 11:38:39 +01:00
Philip Rebohle
073806df7c [dxvk] Move surface creation to the backend 2025-01-16 11:38:39 +01:00
Philip Rebohle
5f5c9a4cdd [d3d9] Improve logging for PS input register indices 2025-01-13 15:38:25 +01:00
Philip Rebohle
af45295a2f [d3d9] Log instruction stream in validator 2025-01-13 15:38:25 +01:00
Philip Rebohle
d9b5f09239 [dxvk] Add debug region stack
Ensures that we correctly begin and end app-provided regions within
each command buffer.
2025-01-09 16:25:46 +01:00
Philip Rebohle
1721be4973 [d3d9] Set debug names for internal buffers 2025-01-09 16:25:46 +01:00
Philip Rebohle
5487f8b9a0 [dxvk] Add convenience methods to check for debug utils support 2025-01-09 16:25:46 +01:00
WinterSnowfall
4151d35e8e [d3d8] Alignment and formatting improvements 2025-01-09 15:50:46 +01:00
WinterSnowfall
8ead28e481 [d3d8] Unify source file endline delimiters 2025-01-09 15:50:46 +01:00
WinterSnowfall
475bf4e9c1 [d3d9] Use cdw to iterate over register tokens in D3D9ShaderValidator 2025-01-07 17:49:18 +01:00
WinterSnowfall
150cb0d4c7 [d3d9] Refactor the D3D9ShaderValidator implementation 2025-01-06 18:55:37 +01:00
WinterSnowfall
28a08cae6d [d3d8/9] Clear pLockedRect/Box contents universally on lock 2025-01-06 15:52:42 +01:00
Robin Kertels
24f98c5835 [d3d9] Skip texture type check when forceSpecConst option is active 2025-01-04 02:11:58 +00:00
Robin Kertels
1eb0c687a6 [d3d9] Fix messing up the dirty textures bitmask 2024-12-20 18:26:02 +01:00
Robin Kertels
65843aa016 [d3d9] Don't bind textures if texture type doesnt match 2024-12-17 14:49:52 +01:00
WinterSnowfall
4dd0afe121 [d3d9] Validate depth and stencil clears 2024-12-10 01:16:24 +01:00
Jeff
d1abce3be2 [d3d9] Add GetInstanceExtensions to interop API 2024-12-09 18:11:46 +01:00
WinterSnowfall
d094053018 [d3d9] Implement several IDirect3DShaderValidator9 validations
Co-Authored-By: Joshua Ashton <joshua@froggi.es>
Co-Authored-By: Paul Gofman <gofmanp@gmail.com>
2024-12-05 14:59:56 +01:00
Autumn Ashton
d956b188ed [d3d9] Clip plane compaction
Compact clip planes to the smallest amount that are enabled.

Signed-off-by: Autumn Ashton <misyl@froggi.es>
2024-12-05 06:08:34 +00:00
Autumn Ashton
8c4c814fb7 [d3d9] Spec-constant out writes to clip distances when disabled
Add a new spec constant with a mask of the enabled clip planes such that they can be optimized out to improve performance.

For GPL shaders, override what we return here so it's always true and don't bother putting the mask in the UBO.

Signed-off-by: Autumn Ashton <misyl@froggi.es>
2024-12-05 06:08:34 +00:00
WinterSnowfall
027fe5963a [d3d9] Fixes for state block specific behavior 2024-12-04 13:06:28 +01:00
WinterSnowfall
17b85accfb [d3d9] Adjust device reset failure error codes 2024-12-04 13:06:28 +01:00
WinterSnowfall
f23c74949a [d3d9] Validate supported formats in D3D9Surface::GetDC 2024-12-04 13:06:28 +01:00
WinterSnowfall
fb56668dc0 [d3d9] Adjust out of bounds clip plane index handling 2024-12-04 13:06:28 +01:00
WinterSnowfall
9c012c8e75 [d3d9] Skip recording MultiplyTransform calls in state blocks 2024-12-04 13:06:28 +01:00
WinterSnowfall
640a266158 [d3d9] Only advertise SRCCOLOR2 & INVSRCCOLOR2 with 9Ex 2024-12-04 13:06:28 +01:00
WinterSnowfall
218b67dd0c [d3d9] Use header back buffer limits during validation
Co-authored-by: Blisto91 <47954800+Blisto91@users.noreply.github.com>
2024-11-28 15:44:00 +01:00