1
0
mirror of https://github.com/doitsujin/dxvk.git synced 2025-02-05 20:52:11 +01:00

1460 Commits

Author SHA1 Message Date
Joshua Ashton
9e4877be81 [d3d11] Store SoTarget buffer as a private ref 2022-09-16 12:49:10 +02:00
Joshua Ashton
b40935a48d [d3d11] Store context state ID buffers as private refs 2022-09-16 12:49:10 +02:00
Joshua Ashton
ca38cebe0b [d3d11] Store private refs for IA layout 2022-09-16 12:49:10 +02:00
Joshua Ashton
9545281542 [d3d11] Store private refs for VB + IB bindings 2022-09-16 12:49:10 +02:00
Joshua Ashton
9bfe46ac50 [d3d11] Store private refs for srv and rtv bindings 2022-09-16 12:49:10 +02:00
Joshua Ashton
2419226456 [d3d11] Store private refs for constant buffer bindings 2022-09-16 12:49:10 +02:00
Joshua Ashton
8758bcedae [d3d11] Store private refs to context shaders 2022-09-16 12:49:10 +02:00
Joshua Ashton
699d56e35d [d3d11] Handle nullptr RasterizerState in ApplyRasterizerSampleCount
This broke as of a637134c56aea39ef031d9141224548df384269b is causing a crash in the BGFX d3d11 samples.
2022-09-16 11:40:36 +02:00
Joshua Ashton
3a6f8fa413 [d3d11] Assign ForcedSampleCount to correct value in ApplyRasterizerSampleCount
ForcedSampleCount was never being respected as it would always be replaced with 1 as it was being assigned to the wrong variable.

This was also probably causing a bunch of redundant CS work as it was changing state that was dirty checked.
2022-09-16 11:40:36 +02:00
Philip Rebohle
8dc9400045 [d3d11] Report D3D11_FORMAT_SUPPORT2_SHAREABLE appropriately 2022-09-11 16:40:02 +02:00
Philip Rebohle
299fc4c4cf [d3d11] Determine shared resources tier more accurately 2022-09-11 16:40:02 +02:00
Philip Rebohle
3a636f6094 [dxvk] Introduce DxvkFormatQuery 2022-09-11 16:40:02 +02:00
Joshua Ashton
9adc6f2d3e [d3d11] Remove unused this capture in UnbindResources 2022-09-10 21:46:07 +00:00
Joshua Ashton
a3727ebd42 [d3d11] Fix UNKNOWN enum in video view dimension switch cases 2022-09-10 21:46:07 +00:00
Joshua Ashton
aa06e71dee [d3d11] Remove useless const qualifiers on IsYCbCr and NeedsCopy return values 2022-09-10 21:27:04 +00:00
Joshua Ashton
ce5e7ad427 [d3d11] Remove MaxAnisotropy < 0 check
This type is unsigned, this is impossible.
2022-09-10 21:27:04 +00:00
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