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

3593 Commits

Author SHA1 Message Date
Joshua Ashton
9a40c1e6ae [dxvk] Fix fb resolve offset
gl_FragCoord is read in the fs shader, so we need to take into account the dstOffset here!

This was causing the offset to be doubled rather than eliminated
for the resolves for refractive water in Serious Sam 2
as srcOffset == dstOffset.

Fixes #1637
2020-05-22 11:13:07 +02:00
Joshua Ashton
8e7df31878 [d3d9] Correct resolve offset regions for intermediate StretchRect resolves
We don't want to use the dst info for these, given the blit will do that.

Partially fixes #1637
2020-05-22 11:13:07 +02:00
Joshua Ashton
e2ad3b1b20 [d3d9] Improve sampler anisotropy normalization 2020-05-21 08:58:39 +01:00
Philip Rebohle
0c0d582f24
[dxvk] Default to fragment shader resolved on official AMD drivers
Improves performance of MSAA resolves. RADV does not benefit.
2020-05-19 18:54:25 +02:00
Philip Rebohle
5d7b5b0e35
[dxvk] Fix framebuffer resolve barriers 2020-05-19 16:23:44 +02:00
Christopher Egert
79feed9d89 [d3d9] Allow D3DFMT_NULL as RenderTargetFormat in CheckDepthStencilMatch
This partially fixes shadows in Timeshift.
2020-05-19 04:12:36 +01:00
Joshua Ashton
63a4c4d457 [tests] Add tests for D3DFMT_NULL format querying 2020-05-19 04:11:59 +01:00
Joshua Ashton
5339f8df53 [tests] Fix d3d9_triangle 2020-05-19 04:07:11 +01:00
DadSchoorse
84bb768a32 [util] Enable d3d9.invariantPosition for Halo/Hale CE
Fixes #1550
2020-05-17 23:41:42 +02:00
Philip Rebohle
2e378257ea
[meta] Release 1.7 2020-05-16 17:07:18 +02:00
Robin Kertels
724d0fc0b2 [d3d9] Set scissor to the viewport if that's smaller
Fixes #1608
2020-05-13 18:53:11 +01:00
Philip Rebohle
6643c75f37
[dxvk] Use access flags rather than usage when tracking gfx barriers 2020-05-12 00:24:09 +02:00
Philip Rebohle
57acbbd7c7
[d3d11] Always enable STORAGE_BUFFER_BIT usage for srv/uav buffers
Fixes validation errors in games that use incorrect view types in
some cases, e.g. Cloudpunk.
2020-05-12 00:23:12 +02:00
Philip Rebohle
aa0b306d2e
[d3d11] Require multiDrawIndirect feature for Feature Level 11.0
All hardware that DXVK can run on supports this, so let's just enable it.
Saves some feature checks in games using Ubisoft's Anvil Next engine.
2020-05-11 01:15:06 +02:00
Philip Rebohle
e7455b6460
[vulkan] Remove VulkanFn wrapper
Not really necessary, and apparently this is causing trouble on GCC 10.1.

Fixes #1620.
2020-05-10 02:06:27 +02:00
Joshua Ashton
3a6c0cf605 [dxso] Implicitly define Color inputs as centroid in PS <= 2 2020-05-09 20:49:55 +01:00
Joshua Ashton
774f74cd36 [d3d9] Only dirty ff pixel shader if set texture is in PS binding range 2020-05-07 16:14:11 +01:00
Joshua Ashton
27b9736626 [d3d9] Dirty fixed function pixel shader on texture type change
Fixes #1603
2020-05-07 16:09:58 +01:00
Joshua Ashton
b2f6885e55 [d3d9] Make texture stage state args mask easier to read 2020-05-07 15:37:05 +01:00
Joshua Ashton
a6771daf49 [d3d9] Unbind depth image views on device reset 2020-05-07 15:35:48 +01:00
Joshua Ashton
42deab0d60 [d3d9] Cleanup SetStateTextureStageState dirty flags 2020-05-07 14:50:26 +01:00
Joshua Ashton
f88f424da4 [d3d9] Convert border color to float in CS thread
It's cheaper to look up sampler keys this way
2020-05-07 13:11:59 +01:00
Joshua Ashton
fd75775197 [d3d9] Use unordered comparison opposed to isnan
Results in better codegen
2020-05-07 13:05:36 +01:00
Joshua Ashton
198ce13934 [d3d9] Replace clamp with min in sampler normalization 2020-05-07 13:01:14 +01:00
Philip Rebohle
68be040f4a
[dxvk] Use compute queue for transfers if DMA queue is not available
Affects RADV. Let's see if this works and does anything for performance.
2020-05-05 12:49:13 +02:00
Philip Rebohle
d999d0a15c
[tests] Improve HLSL compiler
Makes it easier to generate code for D3D12 tests.
2020-05-05 10:26:19 +02:00
Philip Rebohle
5fd361757b
[d3d9] Disable old border color hack if custom border colors are supported 2020-05-04 20:18:44 +02:00
Philip Rebohle
263865cf28
[d3d9] Enable custom border color features if available 2020-05-04 19:46:57 +02:00
Philip Rebohle
00613d1dc7
[d3d11] Enable custom border color features if available 2020-05-04 19:46:57 +02:00
Philip Rebohle
1fc6e3adbe
[dxvk] Use custom border colors if available 2020-05-04 19:46:57 +02:00
Philip Rebohle
0648314451
[dxvk] Refactor DxvkSampler::getBorderColor 2020-05-04 19:46:57 +02:00
Philip Rebohle
7b81db2c75
[dxvk] Pass device to sampler constructor 2020-05-04 19:46:57 +02:00
Philip Rebohle
a968f29754
[dxvk] Enable VK_EXT_custom_border_color if available 2020-05-04 13:27:35 +02:00
Philip Rebohle
513f3f552d
[meta] Update Vulkan headers 2020-05-04 13:16:08 +02:00
Philip Rebohle
7239066c5c
[dxvk] Don't stall SDMA command buffer for image initialization 2020-05-02 20:20:56 +02:00
Philip Rebohle
4fafeb21d0
[dxvk] Optimize clearDepthStencilImage barrier 2020-05-02 20:13:13 +02:00
Philip Rebohle
e24954ca39
[dxvk] Optimize clearColorImage barrier 2020-05-02 20:13:13 +02:00
Philip Rebohle
52cad95f2c
[dxvk] Use initializeImage in clearColorImage 2020-05-02 20:13:13 +02:00
Philip Rebohle
bbd5762d3d
[dxvk] Add initializeImage helper
Allows us to use TOP_OF_PIPE -> xxx barriers more often.
2020-05-02 20:10:19 +02:00
Philip Rebohle
a208f45fe4
[dxvk] Actually reinitialize image if necessary 2020-05-02 19:27:45 +02:00
Philip Rebohle
651646ca7f
[dxvk] Fix acquire barrier in clearCompressedColorImage 2020-05-02 19:06:22 +02:00
Philip Rebohle
dcc38c98e7
[dxvk] Fix acquire barriers in resolveImageHw 2020-05-02 18:58:38 +02:00
Philip Rebohle
b370d13743
[dxvk] Fix acquire barrier in updateImage 2020-05-02 18:52:35 +02:00
Philip Rebohle
8921be81bd
[dxvk] Fix blit acquire barriers 2020-05-02 18:49:58 +02:00
Philip Rebohle
85db84a1b3
[dxvk] Fix access mask in clearImageViewFb
VK_ATTACHMENT_LOAD_OP_LOAD requires the read flags to be set.
2020-05-02 18:48:59 +02:00
Philip Rebohle
5bab5ae7a5
[dxvk] Fix acquire barriers in copyImageHw 2020-05-02 18:46:35 +02:00
Philip Rebohle
c1fcc3fc98
[dxvk] Simplify barriers around meta copy operations 2020-05-02 18:46:21 +02:00
Philip Rebohle
f6007e4f1a
[dxvk] Emit graphics barriers upon spilling render pass
We actually need to do this now since we no longer set
all the access flags in the render pass barrier.
2020-05-02 11:36:32 +02:00
Philip Rebohle
0245273ab7
[dxvk] Remove store op from render pass ops
This is always going to be VK_ATTACHMENT_STORE_OP_STORE anyway.
2020-05-02 11:36:32 +02:00
Philip Rebohle
c0f72940dd
[dxvk] Optimize regular render pass barriers
Only applies the depth/color attachment stage and access mask
if necessary, and removes a bunch of pointless read-only flags.
2020-05-02 11:36:32 +02:00