Philip Rebohle
ccfb986e72
[dxbc] Rework TGSM workaround
2022-09-10 14:27:13 +02:00
Philip Rebohle
0f9a042952
[d3d11] Report Tiled Resources Tier 3 again
...
Partially reverts df5756c9a52a30f58c7364499a3523385004ec82.
Turns out that WARP does this, so we might as well expose it too.
2022-09-10 14:26:50 +02:00
Philip Rebohle
5babb29922
[d3d11] Set host stage and access bits for staging resources
...
We don't need this for resources that we'll never read back from.
2022-09-08 19:26:55 +02:00
Philip Rebohle
9964e4a632
[d3d11] Clean up resource validation around tiled resources
2022-09-05 07:51:08 +02:00
Philip Rebohle
df5756c9a5
[d3d11] Do not report Tiled Resources Tier 3
...
Neither Nvidia nor AMD drivers report Tier 3 support on Windows,
so this is likely a D3D11 runtime limitation, even though the
API could technically support it.
2022-09-05 07:51:08 +02:00
Philip Rebohle
02600706fe
[d3d11] Enable Conservative Rasterization Tier 3
...
Mostly to bring this in line with vkd3d-proton.
2022-09-05 07:27:00 +02:00
Philip Rebohle
bd912212b5
[d3d11] Adjust preferred mapping modes for default images
2022-09-05 05:52:55 +02:00
Philip Rebohle
fdcbdeb28f
[d3d11] Implement dirty trackig for default-mapped images
...
Avoids GPU synchronization when using WriteToSubresource,
and also reduces bandwidth.
2022-09-05 05:52:55 +02:00
Philip Rebohle
40ffac72d9
[d3d11] Introduce methods for dirty region tracking for mapped images
2022-09-05 05:52:55 +02:00
Philip Rebohle
1bed39f266
[d3d11] Rework ReadFromSubresource and WriteToSubresource
...
Mainly changes the code to use existing helpers where possible, and
adds support for planar images, which was previously completely broken
for these functions.
2022-09-05 04:32:01 +02:00
Philip Rebohle
ca833082b5
[d3d11] Fix broken image readback for mapped default images
2022-09-05 04:31:13 +02:00
Philip Rebohle
6d9353f4e9
[d3d11] Don't depend on variableMultisampleRate feature
2022-09-04 18:28:27 +02:00
Philip Rebohle
882072e134
[d3d11] Move maximum feature level check to D3D11DeviceFeatures
2022-09-04 18:28:27 +02:00
Philip Rebohle
c082e7f0a9
[d3d11] Add convenience query for Conservative Rasterization tier
2022-09-04 18:28:27 +02:00
Philip Rebohle
59dd2d54cd
[d3d11] Add convenience query for Tiled Resources tier
2022-09-04 18:28:27 +02:00
Philip Rebohle
0e70398d4e
[d3d11] Use D3D11DeviceFeatures in CheckFeatureSupport
2022-09-04 18:28:27 +02:00
Philip Rebohle
71d6e8f849
[d3d11] Introduce D3D11DeviceFeatures
2022-09-04 18:28:27 +02:00
Philip Rebohle
5490aa936b
[d3d11] Rework D3D11 feature enablement
...
Rather than enabling based on requested feature levels, always enable
all supported features that we might use, and report the maximum
feature level based on that.
This fixes an issue in CreateDeviceContextState which may raise the
device feature level, and another issue wherein the feature level
override is ignored if tiled resources are not supported.
2022-09-04 18:28:27 +02:00
Philip Rebohle
ff6a6e2d37
[d3d11] Use new pseudo-features where applicable
2022-09-04 18:28:27 +02:00
Philip Rebohle
439043ddb4
[d3d11] Do not implicitly stall waitable swap chains
2022-09-02 14:33:11 +02:00
Philip Rebohle
17320776f0
[dxgi] Duplicate frame latency handle
...
Apps can call CloseHandle on this.
2022-09-02 14:25:12 +02:00
Philip Rebohle
e882a7f8ba
[d3d11] Implement extended shader interface
2022-08-31 16:25:44 +02:00
Philip Rebohle
610472e658
[d3d11] Introduce ID3D11VkExtShader
2022-08-31 16:25:44 +02:00
Philip Rebohle
91bdc8d06c
[d3d11] Expose feature level 12_0
2022-08-26 05:53:03 +02:00
Philip Rebohle
91ff6d68e1
[d3d11] Expose support for tiled resources
2022-08-26 05:53:03 +02:00
Philip Rebohle
790da79512
[d3d11] Implement min/max filters
2022-08-26 05:53:03 +02:00
Philip Rebohle
0a222aaaf0
[d3d11] Implement CopyTiles and UpdateTiles
2022-08-26 05:53:03 +02:00
Philip Rebohle
ca41bb4ea4
[d3d11] Implement CopyTileMappings
2022-08-26 05:53:03 +02:00
Philip Rebohle
ff2ff37696
[d3d11] Implement UpdateTileMappings
2022-08-26 05:53:03 +02:00
Philip Rebohle
5130638ebe
[d3d11] Implement ResizeTilePool
2022-08-26 05:53:03 +02:00
Philip Rebohle
e8f59bfd7c
[d3d11] Implement tile pool creation
2022-08-26 05:53:03 +02:00
Philip Rebohle
0cd67cb98a
[d3d11] Implement tiled image creation
2022-08-26 05:53:03 +02:00
Philip Rebohle
0637fdf82e
[d3d11] Implement tiled buffer creation
2022-08-26 05:53:03 +02:00
Philip Rebohle
7f856b545a
[d3d11] Implement format feature check for tiled resources
2022-08-26 05:53:03 +02:00
Philip Rebohle
ca0dedd213
[d3d11] Implement multisampling support check for tiled resources
2022-08-26 05:53:03 +02:00
Philip Rebohle
3f7093325b
[d3d11] Implement GetResourceTiling
2022-08-26 05:53:03 +02:00
Philip Rebohle
f97660e210
[d3d11] Implement TiledResourceBarrier
2022-08-26 05:53:03 +02:00
Philip Rebohle
626ccef43b
[d3d11] Enable sparse features if supported by the device
2022-08-26 05:53:03 +02:00
Philip Rebohle
2329c71b6f
[dxvk] Implement sampler reduction mode
2022-08-26 05:53:03 +02:00
Philip Rebohle
edc74f4c8b
[d3d11] Handle D3D11_FEATURE_D3D11_OPTIONS5
2022-08-26 05:15:28 +02:00
Philip Rebohle
9b4e53cee2
[d3d11] Handle D3D11_FEATURE_SHADER_CACHE
2022-08-26 05:15:28 +02:00
Philip Rebohle
9420391dce
[d3d11] Adjust reported resource sharing caps
2022-08-26 05:15:28 +02:00
Philip Rebohle
f521a342d0
[d3d11] Report marker support appropriately
2022-08-26 05:15:28 +02:00
Philip Rebohle
559fa50f54
[d3d11] Introduce d3d11.enableContextLock option
2022-08-24 12:27:02 +02:00
Philip Rebohle
86bdda70b4
[d3d11] Move D3D10Multithread instance to immediate context
...
Deferred contexts do not support this.
2022-08-24 12:15:35 +02:00
Philip Rebohle
cff9056915
[dxvk] Always enable timeline semaphore feature
2022-08-22 00:40:07 +02:00
Philip Rebohle
23c3960f65
[dxvk] Store WSI semaphore pair directly with the command list
2022-08-22 00:07:15 +02:00
Joshua Ashton
801d97806d
[d3d11] Stub out OpenSharedResourceGeneric on non-Windows
2022-08-21 22:37:13 +02:00
Joshua Ashton
baba2e3c09
[d3d11] Use dxgi_dep instead of lib_dxgi
...
Fixes building on native.
2022-08-21 22:03:45 +02:00
Joshua Ashton
baa88d8cf1
[d3d11] Don't check for apitrace on non-Windows platforms
2022-08-21 22:03:45 +02:00