Robin Kertels
18b0ef697c
[dxvk] Rework SetEventOnCompletion
...
* Create the waiter thread on demand
* Don't wake up the waiter thread every 10ms
when no events are queued
* Wait on caller thread when hEvent = null
2022-12-16 17:37:19 +01:00
Philip Rebohle
c55c09368b
[d3d11] Only store low 8 bits of stencil reference
...
Seems to match behaviour of the D3D11 runtime, in that OMGetDepthStencilState
will not retain the high bits.
Found by CME. Should fix #1784 .
2022-12-11 19:51:57 +01:00
Philip Rebohle
4f90d7bf5f
[dxbc,d3d11] Don't access shex chunk if it is not defined
2022-11-25 12:45:32 +01:00
Philip Rebohle
a130146f15
[dxvk] Remove dead enableRtOutputNanFixup option
...
Dead code since 2.0, not sure why this was still in here.
2022-11-18 22:31:54 +01:00
Philip Rebohle
76e6b2764b
[dxgi] Change CreateSwapChain to take a surface factory
2022-11-07 14:14:05 +01:00
Philip Rebohle
03dca539cb
[vulkan,d3d9,d3d11] Move surface creation to swap chain implementation
2022-11-07 14:14:05 +01:00
Philip Rebohle
3a9e975a71
[dxgi] Implement DxgiSurfaceFactory
2022-11-07 14:14:05 +01:00
Philip Rebohle
b055c2daea
[d3d11] Avoid querying environment variables on shader creation
2022-10-24 17:58:57 +02:00
Philip Rebohle
859de7e828
[dxvk] Always enable depth clip feature if supported
2022-10-24 16:39:24 +02:00
Philip Rebohle
69d7af42a4
[dxgi] Change swap chain interface to better map to D3D12 needs
2022-10-16 16:38:29 +02:00
Philip Rebohle
aca67f64da
[d3d11] Implement IDXGIVkSwapChainFactory for D3D11
2022-10-16 16:38:29 +02:00
Joshua Ashton
1d3decf100
[build] Add version scripts for native builds
...
FEX would like clean symbols for experimenting with making thunks down the line.
We also just shouldn't be exporting a bunch of random crap -- sadly -fvisibility=hidden doesn't help with a bunch of stuff :(
For reference, RADV also does this.
2022-10-15 19:10:57 +02:00
Joshua Ashton
25798f6fe1
[build] Set name_prefix to libdxvk_
for native builds
...
Less rude and nicer than just d3d9.so.
Matches old DXVK native behaviour too.
2022-10-15 19:10:57 +02:00
Philip Rebohle
bd7d2aac71
[dxgi] Get rid of NotifyModeChange method
...
Was only used for the FPS limiter.
2022-10-07 13:25:56 +02:00
Philip Rebohle
a14ce8d1b0
[d3d11] Enable ROV support if corresponding Vulkan features are supported
2022-09-19 15:44:23 +02:00
Joshua Ashton
000a647c56
[d3d11] Store D3D11DeviceContextState as private ref
...
Avoids a circular dependency
2022-09-16 12:49:10 +02:00
Joshua Ashton
a69c65265a
[d3d11] Store context predication query as private ref
2022-09-16 12:49:10 +02:00
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