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

4921 Commits

Author SHA1 Message Date
Philip Rebohle
2e6a2f1be3
[dxvk] Make shader stage parameter in bindShader a template parameter 2022-08-07 18:44:44 +02:00
Philip Rebohle
29a2cb9a5e
[d3d9,d3d11] Make GetShaderStage functions constexpr 2022-08-07 18:44:44 +02:00
Philip Rebohle
12c2d24d5c
[dxvk] Remove bindResourceView method 2022-08-07 17:59:20 +02:00
Philip Rebohle
69b15b7fe6
[dxvk] Use new resource view binding methods in swapchain blitter 2022-08-07 17:59:20 +02:00
Philip Rebohle
eebcfcf973
[hud] Use new resource view binding methods 2022-08-07 17:59:20 +02:00
Philip Rebohle
1c1958be44
[d3d9] Use new resource view binding methods 2022-08-07 17:59:20 +02:00
Philip Rebohle
28ecf8268d
[d3d11] Use new resource view binding methods 2022-08-07 17:59:20 +02:00
Philip Rebohle
317850e16f
[dxvk] Introduce bindResourceImageView and bindResourceBufferView methods 2022-08-07 17:59:20 +02:00
Philip Rebohle
88bdf2b592
[dxvk] Use vertex extent from vertex binding info
Computing this at runtime is fairly expensive, so try to avoid.
2022-08-07 17:58:19 +02:00
Philip Rebohle
6bcb0a0d61
[d3d11] Compute vertex extent in CreateInputLayout 2022-08-07 17:58:19 +02:00
Philip Rebohle
64169316e6
[d3d9] Compute vertex extent in BindInputLayout 2022-08-07 17:58:19 +02:00
Philip Rebohle
bb8a87196f
[dxvk] Add vertex extent to vertex binding info 2022-08-07 17:58:19 +02:00
Robin Kertels
ddb528cc8e [d3d9] Change texture before updating fetch4 2022-08-07 00:56:38 +01:00
Blisto91
7b28bbae11 [util] Disable unmapping for Saints Row 2 2022-08-06 21:13:32 +01:00
Georg Lehmann
135b8a0e53 [dxso] Setup spec ubo for pixel shaders 2022-08-06 12:35:23 +02:00
Georg Lehmann
6589966fce [d3d9] Fix FF VS fog with GPL 2022-08-06 12:35:23 +02:00
Joshua Ashton
65da0da954 [d3d9] Support for graphics pipeline libraries 2022-08-06 01:20:22 +00:00
Joshua Ashton
9108f8c76c [d3d9] Clean up fetch4 handling 2022-08-06 01:35:43 +01:00
Joshua Ashton
8c9601b4cd [d3d9] Remove generalHazards option
Move everything into MarkRenderHazard.

We are doing a big bump for driver support anyway, no reason to keep this around. Old drivers can take the perf penalty.
2022-08-06 01:33:30 +01:00
Joshua Ashton
63d582a6e7 [d3d9] Use VK_IMAGE_LAYOUT_ATTACHMENT_FEEDBACK_LOOP_EXT for hazards if available 2022-08-06 01:33:30 +01:00
Joshua Ashton
90abd993d4 [d3d9] Pass feedback loop aspect mask to backend 2022-08-06 01:33:30 +01:00
Joshua Ashton
8d070e54a1 [d3d9] Enable extAttachmentFeedbackLoopLayout feature if available 2022-08-06 01:33:30 +01:00
Joshua Ashton
31d17efb48 [dxvk] Add feedback loop aspect flags to bindRenderTargets 2022-08-06 01:33:30 +01:00
Joshua Ashton
dff514c924 [dxvk] Add hazard tracking to fragment output state
We need this to set the right pipeline bits for supporting attachment feedback loops on some vendors.
2022-08-06 01:33:30 +01:00
Joshua Ashton
43f53f3c0e [dxvk] Enable VK_EXT_attachment_feedback_loop_layout if available 2022-08-06 01:33:30 +01:00
Joshua Ashton
49b76fdd07 [dxvk] Support feedback loop layout in pickLayout 2022-08-06 01:33:30 +01:00
Joshua Ashton
9cf5c648d3 [vulkan] Add feedback loop layout to getWritableAspectsForLayout 2022-08-06 01:33:30 +01:00
Joshua Ashton
3c4e85d630 [meta] Update Vulkan headers to 1.3.224 2022-08-06 01:33:30 +01:00
Philip Rebohle
e7b7299ec1
[dxvk] Also consider built-ins declared via OpMemberDecorate
Otherwise we'll miss D3D11 shaders. Oops...
2022-08-06 02:28:39 +02:00
Philip Rebohle
4d9c09b5e7
[dxvk] Don't use pipeline libraries for VS that doesn't export position 2022-08-06 02:09:55 +02:00
Philip Rebohle
3aa786fb6f
[dxvk] Get rid of MaxNumActiveBindings
This only existed due to the binding mask, which we removed with
the null descriptor rework. We can basically support an unlimited
number of descriptors now.
2022-08-06 01:53:08 +02:00
Philip Rebohle
b950102233
[dxvk] Don't use MaxNumActiveBindings for descriptor updates 2022-08-06 01:44:56 +02:00
Philip Rebohle
6fba4c47fe
[dxvk] Don't use MaxNumActiveBindings when creating descriptor set layouts 2022-08-06 01:37:17 +02:00
Philip Rebohle
2fe61675bf
[dxvk] Use existing bit mask iterator when updating descriptor sets
And clean up the code a little.
2022-08-05 21:43:11 +02:00
Robin Kertels
9e1ecec79f [d3d9] Disable fetch4 when binding an incompatible texture
Fixes lighting in Spider-Man: Shattered Dimensions.
2022-08-05 19:33:32 +01:00
Philip Rebohle
d498551a23 [dxso] Add bit selectors to D3D9ShaderSpecConstantManager
Avoids doing double bitfield extractions which isn't
optimized right now.
2022-08-05 19:31:02 +01:00
Joshua Ashton
9619377723 [dxso] Convert opIEqual 1 -> opINotEqual 0
Better chance of getting optimized
2022-08-05 19:31:02 +01:00
Joshua Ashton
b2cbf198e4 [d3d9, dxso] Refactor spec constants to use a bitfield layout
This allows us to use the same information to dump into a push constant for unoptimized pipelines.
2022-08-05 19:31:02 +01:00
Joshua Ashton
438ae5cdfc [dxso] Fix getting sampler type of vertex textures
Fixes: c7afe0dd23
2022-08-05 19:31:02 +01:00
Philip Rebohle
7e237b33b7
[d3d11] Track highest bound unordered access view 2022-08-05 14:13:25 +02:00
Philip Rebohle
934caa3fd7
[d3d11] Track highest bound vertex buffer 2022-08-05 14:13:25 +02:00
Philip Rebohle
3dbd9d8659
[d3d11] Track highest bound sampler 2022-08-05 14:13:25 +02:00
Philip Rebohle
6c372e40f6
[d3d11] Track highest bound shader resource 2022-08-05 14:13:24 +02:00
Philip Rebohle
5dd2b20940
[d3d11] Track highest bound constant buffer 2022-08-05 14:13:24 +02:00
Philip Rebohle
18c4ca8e92
[d3d11] Introduce D3D11MaxUsedBindings
And use it in ResetCommandListState, in order to avoid redundant state changes.
2022-08-05 14:13:24 +02:00
Philip Rebohle
ebbb77518a
[d3d11] Clean up after performing video blit
Otherwise, with the upcoming clear/restore optimizations,
we'd possibly leave some resources bound.
2022-08-05 14:13:24 +02:00
Philip Rebohle
9f07bc6532
[d3d11] Refactor shader state 2022-08-05 14:13:24 +02:00
Philip Rebohle
95ab1465ab
[d3d11] Add reset method to more context state 2022-08-05 14:13:24 +02:00
Philip Rebohle
4e1f6e5efd
[d3d11] Refactor unordered access view and output merger state 2022-08-05 14:13:24 +02:00
Philip Rebohle
8383423fbe
[d3d11] Refactor sampler state 2022-08-05 14:13:24 +02:00