Philip Rebohle
77010d96e4
[dxgi/d3d11] Set returned pointers to nullptr before returning
...
May solve issues with applications which check whether the returned
pointer is null rather than checking a function's return value.
2018-04-02 12:04:20 +02:00
Vesim987
a2f05467c7
[d3d11] Force CreateRenderTargetView to return S_OK with D3D11_RESOURCE_DIMENSION_BUFFER ( #230 )
...
It makes Battlefield 3 and Battlefield 4 working.
2018-03-31 21:47:54 +02:00
Philip Rebohle
ae88f83b86
[d3d11] Introduce D3D11DeviceContainer
...
Refactored DxgiVkDevice, D3D11Device and D3D11Presenter
to behave more like aggregable objects, where the new
D3D11DeviceContainer class is the COM aggregate object.
Fixes the reference counting issue outlined in #210 .
2018-03-28 21:24:52 +02:00
Philip Rebohle
8d3dcba8d5
[dxgi] Renamed private DXGI interfaces
2018-03-28 19:06:00 +02:00
Philip Rebohle
410cde3f17
[dxgi] Move device creation to DxgiAdapter
...
This is better than exporting new functions.
2018-03-28 18:58:53 +02:00
Philip Rebohle
1a8567a363
[d3d11] Fixed silly bug in blend state comparison
2018-03-28 11:55:03 +02:00
Philip Rebohle
675b1c5b8c
[d3d11] Implemented image mapping on deferred contexts
...
Also refactored buffer mapping to reduce code duplication.
Optimized the lookup function for a small performance gain
in games which map a lot of resources on deferred contexts.
2018-03-25 13:24:03 +02:00
Philip Rebohle
61c55d6f89
[d3d11] Get rid of redundant format query
2018-03-25 08:38:31 +02:00
Philip Rebohle
4e84a77896
[d3d11] Disable DO_NOT_WAIT flag by default
...
Apparently this breaks Elder Scrolls Online as well, so we'll
just enable it explicitly for games which benefit from this
optimization and disable it by default.
2018-03-25 00:54:42 +01:00
Philip Rebohle
4ed007e9f6
[d3d11] Add <unordered_map> include
...
Fixes #201 .
2018-03-24 18:54:00 +01:00
Philip Rebohle
0900e1b5f9
[d3d11] Added missing files
2018-03-24 17:29:13 +01:00
Philip Rebohle
bd69e843c2
[d3d11] Added D3D11Options
...
Includes a per-app knob for Witcher 3 to disable D3D11_MAP_FLAG_DO_NOT_WAIT.
2018-03-24 17:02:24 +01:00
Philip Rebohle
ba9e1f307d
[dxbc] Don't use rvalue references for file streams
2018-03-23 18:17:16 +01:00
Philip Rebohle
0a2fa590f5
[d3d11] Reset busy flag after emitting the Flush command
...
Fixes a general performance regression in games
that call WaitForResources a lot.
2018-03-23 11:54:19 +01:00
Philip Rebohle
085fd6a959
[d3d11] Remove unnecessary Map() check
2018-03-22 19:28:00 +01:00
Philip Rebohle
d9b1995cf0
[d3d11] Do not forward D3D11_MAP_FLAG_DO_NOT_WAIT for mapped images
...
Workaround for a regression in The Witcher 3 that was introduced
in commit 53d557c2db
. May have a
significant negative impact on performance in some games.
2018-03-22 14:12:43 +01:00
Philip Rebohle
b3aff7cd2e
[d3d11] Fix immediate context initialization
...
The old initialization code did not take either CSMT or
Deferred Contexts into account and could lead to illegal
calls to beginRecording.
Fixes a hang encountered in Dishonored 2.
2018-03-22 13:40:45 +01:00
Philip Rebohle
7f6c8dff95
[d3d11] Fix flush condition and CS thread synchronization
...
If chunks have been sent to the CS thread, we need to
flush even if the current chunk is empty.
2018-03-22 12:58:26 +01:00
Philip Rebohle
53d557c2db
[d3d11] Implement D3D11_MAP_FLAG_DO_NOT_WAIT
...
Improves framerate in Dishonored 2 by up to 50%.
2018-03-22 11:02:14 +01:00
Philip Rebohle
08806070ca
[d3d11] Fix CheckFeatureSupport return value
2018-03-21 15:08:34 +01:00
Philip Rebohle
efcd5c6b4d
[d3d11] Implement support for D3D11_FEATURE_FORMAT_SUPPORT2
2018-03-21 13:31:22 +01:00
Philip Rebohle
09151f3616
[d3d11] Lift shaderStorageImageReadWithoutFormat requirement
2018-03-21 12:57:29 +01:00
Philip Rebohle
c1a1ff3915
[d3d11] Implement remaining D3D11.1 feature queries
2018-03-21 04:58:31 +01:00
Philip Rebohle
17e981f360
[dxvk] Increase UAV slot count to 64 for the graphics pipeline
...
D3D11 raised this limit from 8 UAVs in the fragment shader to
64 UAVs in all graphics stages combined.
2018-03-21 04:56:33 +01:00
Philip Rebohle
bd71f256e5
[d3d11] Fixed constant buffer binding update
2018-03-21 03:26:31 +01:00
Philip Rebohle
6550e8d623
[d3d11] Expose implemented Feature Level 11.1 features
2018-03-20 23:25:23 +01:00
Philip Rebohle
fd4e55007f
[d3d11] Export support for driver command lists
...
This indicates that our implementation of UpdateSubresource on
deferred contexts is not affected by the same issue as on Windows.
2018-03-19 17:57:20 +01:00
Philip Rebohle
493ad66d91
[d3d11] Remove obsolete acquire/release pair
...
This is no longer needed with the universally
thread-safe slice allocator.
2018-03-19 17:56:26 +01:00
Philip Rebohle
c6251d28fc
[d3d11] Remove warnings from CopySubresourceRegion1 / UpdateSubresource1
...
The flags should have no impact on correctness, so not supporting them
makes no difference. Prevents log spam in Dishonored 2.
2018-03-19 14:52:42 +01:00
pchome
2f8ccfa30e
[build] Add header required for std::find_if()
2018-03-19 12:49:48 +02:00
Philip Rebohle
f1c3b59e87
[d3d11] Implemented buffer mapping on deferred contexts
...
Allows the MultiThreadedRendering demo from the Microsoft SDK to run.
2018-03-19 03:19:13 +01:00
Philip Rebohle
d6d6ed4efd
[d3d11] Expose Feature Level 11_1 if explicitly requested
...
Not enabled by default since some 11_1 functionality is not yet implemented.
2018-03-18 23:39:40 +01:00
Philip Rebohle
127fad89be
[d3d11] Refactored D3D11SamplerState creation
2018-03-18 23:35:40 +01:00
Philip Rebohle
b04e9b5f18
[d3d11] Refactored D3D11DepthStencilState creation
2018-03-18 23:32:01 +01:00
Philip Rebohle
11d8eb3be4
[d3d11] Implemented D3D11BlendState1
2018-03-18 23:27:29 +01:00
Philip Rebohle
2591bbdabd
[d3d11] Implemented ID3D11RasterizerState1 stub
2018-03-18 22:53:20 +01:00
Philip Rebohle
0a473b4f86
[d3d11] Return error if an application creates an RTV for a buffer
...
Vulkan does not support buffer RTVs, and neither does DXVK, so we
should return an error in that case. Previously, DXVK would crash
upon querying image information.
2018-03-18 21:38:48 +01:00
Philip Rebohle
e009e63aa7
[d3d11] Fix sampler state refcount issue
...
We cannot use strong references in state objects that
are stored inside a member of the device itself.
2018-03-18 14:57:14 +01:00
Philip Rebohle
2346a2ac03
[d3d11] Remove inconsistent uses of "this"
2018-03-18 12:57:39 +01:00
Philip Rebohle
c43702e445
[d3d11] Implement GetConstantBuffers1 methods
2018-03-18 12:45:27 +01:00
Philip Rebohle
e54246d000
[d3d11] Implement SetConstantBuffers1 methods
2018-03-18 12:39:11 +01:00
Philip Rebohle
3133e4ba35
[d3d11] Add constant buffer offsets and counts to context state
2018-03-18 12:36:45 +01:00
Philip Rebohle
a8eecfbfe5
[d3d11] Enable direct image mapping by default
2018-03-18 00:36:53 +01:00
Philip Rebohle
ebd46e4109
[d3d11] Re-define D3D11_FEATURE_DATA_ARCHITECTURE_INFO
...
Fixes previous commit on MinGW.
2018-03-17 21:38:35 +01:00
Mikhail Paulyshka
043982d3be
[d3d11] stub implementation of ID3D11Device1 ( #175 )
2018-03-17 20:11:00 +01:00
Mikhail Paulyshka
a3e7139c1e
[d3d11] stub implementation of ID3DDeviceContext1 ( #174 )
2018-03-17 18:54:09 +01:00
Philip Rebohle
52a9a4f406
[dxvk] Reimplemented clearRenderTarget
...
Closer to the D3D11 API. We cannot use the normal clearColorImage and
clearDepthStencilImage methods in case the game uses a 2D array view
for a 3D image. Fixes some validation issues in Hellblade.
2018-03-17 17:59:43 +01:00
Philip Rebohle
1af52abb67
[d3d11] Move OMSetRenderTargets optimization to D3D11ImmediateContext
...
We cannot call Flush() on deferred contexts anyway, so the command
submission optimization should only be applied to immediate contexts.
2018-03-17 14:09:16 +01:00
Philip Rebohle
ccfe1a346b
[d3d11] Moved GetViewFromDesc and NormalizeDesc out of D3D11Devuce
2018-03-17 13:42:37 +01:00
Philip Rebohle
0ddbb58ce4
[d3d11] Enable IDXGIDevice2 interface query
2018-03-17 13:05:55 +01:00
Philip Rebohle
eb8ae5cc82
[d3d11] Allow 2D array view creation for 3D textures
...
Fixes a regression that was introduced with the texture
class refactor. Fixes validation issues in Hellblade.
2018-03-14 20:40:11 +01:00
Philip Rebohle
0e0ee61d9b
[d3d11] Always use VK_IMAGE_CREATE_MUTABLE_FORMAT_BIT
...
We need to investigate why not doing this breaks shadows in Heaven.
2018-03-14 17:40:26 +01:00
Philip Rebohle
3b20c71894
[d3d11] Re-implement direct image mapping (disabled by default)
...
We cannot enable this by default yet because it may break some games.
2018-03-14 16:40:28 +01:00
Philip Rebohle
155bd32e22
[d3d11] Check if a textue can be created before making the attempt
...
This may prevent driver crashes and give more useful debugging info
in case a given combination of image parameters is not supported by
a device. May also improve compatibility with direct image mapping.
2018-03-14 16:03:48 +01:00
Philip Rebohle
7a6d61d943
[d3d11] Create mapped image buffer only when needed
...
Also adds some documentation to D3D11CommonTexture.
2018-03-14 14:49:45 +01:00
Philip Rebohle
0ba3337289
[d3d11] Refactored Map/Unmap methods
2018-03-14 14:40:09 +01:00
Philip Rebohle
91b82c05b2
[d3d11] Refactoring texture classes: Move static methods into D3D11CommonTexture
2018-03-14 01:16:31 +01:00
Philip Rebohle
56df0bcccb
[d3d11] Refactoring texture classes: Remove D3D11TextureInfo
2018-03-14 00:45:07 +01:00
Philip Rebohle
16d66c8a1d
[d3d11] Refactoring texture classes: Introduce D3D11CommonTexture
2018-03-13 23:51:30 +01:00
Philip Rebohle
e6814332e7
Revert "[d3d11] Re-enable image mapping"
...
Still breaks games for unknown reasons.
2018-03-13 17:40:12 +01:00
Philip Rebohle
25cae39cdb
[spirv] Remove SPIR-V tools integration
...
SPIR-V tools did not turn out to be useful, but increased the
binary size by a significant amount and caused build problems.
- spirv-opt: Far too slow for the intended purpose, and Nvidia
specific shader issues have been reported and fixed.
- spirv-val: Not much value in practice since shaders can be
written to a directory and validated manually.
2018-03-13 14:32:03 +01:00
Philip Rebohle
72f954088b
[d3d11] Use only one mip level for multisampled textures
2018-03-13 11:29:25 +01:00
Philip Rebohle
06cff50453
[d3d11] Flush CS chunks when executing/finalizing command lists
...
Fixes rendering issues and validation errors in Kingdom Come: Deliverance.
2018-03-12 23:36:55 +01:00
Mikhail Paulyshka
d3a4230acf
[d3d11] D3D11Device::QueryInterface() suppress warning for d56e2a4c-5127-8437-658a-98c5bb789498
...
there is no public information about this interface
2018-03-12 23:29:44 +03:00
Philip Rebohle
56c826be85
[d3d11] Do not enable D3D11_BIND_UNORDERED_ACCESS for back buffers
...
Not all formats can be used for unordered access views. An application
must explicitly request this feature during swap chain creation.
2018-03-12 13:03:33 +01:00
Philip Rebohle
3e60c8f316
[d3d11] Re-enable image mapping
...
After more extensive testing, it looks like commit 4eacff21
actually fixed the issue in most (all?) cases.
2018-03-12 12:54:05 +01:00
Mikhail Paulyshka
b17568deba
[dxgi,d3d11] log unknown interfaces GUID ( #154 )
...
* [d3d11] log unknown interfaces GUID in QueryInterface()
* [dxgi] log unknown interfaces GUID in QueryInterface()
2018-03-12 12:05:43 +01:00
Mikhail Paulyshka
f94ff7db4f
[d3d11] add check for pResource against nullptr in D3D11ImmediateContext::Map()
2018-03-12 03:18:44 +03:00
Philip Rebohle
4eacff21e9
[dxvk] Flush initialization context unconditionally
...
An application might need to wait for a resource to become available
just after it has been created, in which case its initialization
commands might not have been dispatched yet. If no rendering commands
were issued on the immediate context prior to the wait operation,
WaitForResource would stall indefinitely.
2018-03-11 20:25:09 +01:00
Philip Rebohle
bbbc552868
[d3d11] Disabled image mapping
...
Effectively reverts d3e89b20dd
as it
breaks games for some reason.
2018-03-11 19:02:02 +01:00
Philip Rebohle
5b9e4c1faa
[d3d11] Fix image tiling
...
Fixes bug introduced in d3e89b20dd
, which
applies linear tiling to the wrong kind of images.
2018-03-11 00:06:44 +01:00
Philip Rebohle
d3e89b20dd
[d3d11] Allocate host-readable images on host-visible memory
...
Not having to wait for an image->buffer copy to finish on the
GPU allows for more efficient synchronization. Significantly
improves performance in The Witcher 3.
2018-03-10 23:32:15 +01:00
Philip Rebohle
afaa3b5a30
[d3d11] Fix minor code inconsistencies
2018-03-10 14:41:06 +01:00
Philip Rebohle
7069df6b1e
[d3d11] Reimplemented ClearState
...
Potentially increases the overhead of ClearState calls, but also correctly
resets the context state when deferred contexts are used.
2018-03-10 13:06:15 +01:00
Philip Rebohle
5cb6c968b5
[d3d11] Fix RestoreUnorderedAccessViews for pixel shaders
2018-03-10 12:47:45 +01:00
Philip Rebohle
ca53fe7925
[d3d11] Minor fixes
2018-03-10 12:11:17 +01:00
Philip Rebohle
969b35c80c
[d3d11] RestoreState: Restore DS/OM/RS state objects
2018-03-10 11:56:58 +01:00
Philip Rebohle
5befa3b745
[d3d11] RestoreState: Restore IA state
2018-03-10 11:44:27 +01:00
Philip Rebohle
c49a0b969b
[d3d11] RestoreState: Restore viewport state
2018-03-10 11:31:40 +01:00
Philip Rebohle
f15feef47f
[d3d11] RestoreState: Restore shader resource bindings
2018-03-10 11:30:32 +01:00
Philip Rebohle
5ef0f31c66
[dxvk/d3d11] Refactored resource binding
...
Slightly reduces overhead of D3D11 *SetShaderResources methods.
2018-03-10 11:16:52 +01:00
Philip Rebohle
b72f11a0bf
[d3d11] RestoreState: Restore vertex and index buffer bindings
2018-03-10 10:39:07 +01:00
Philip Rebohle
d1a2cff9ac
[d3d11] RestoreState: Restore framebuffer and shader bindings
2018-03-10 10:19:07 +01:00
Philip Rebohle
b7a964e15e
[d3d11] Fix texture cube array view normalization
2018-03-09 17:24:36 +01:00
Philip Rebohle
3b42011c50
[d3d11] Implemented OMGetRenderTargetsAndUnorderedAccessViews and predication stub
2018-03-09 16:47:20 +01:00
Philip Rebohle
09fd7abde0
[d3d11] Fix potentially invalid value for anisotropic filtering
2018-03-09 15:24:28 +01:00
Philip Rebohle
85d28f7328
[d3d11] Implemented ClearUnorderedAccessViewUint for raw and structured buffers
2018-03-07 16:29:13 +01:00
Philip Rebohle
95e2c641e0
[d3d11] Partially implement SOSetTargets/SOGetTargets
...
This does not implement any stream output functionality yet,
but it allows games to set and query stream output buffers.
2018-03-07 15:32:19 +01:00
Philip Rebohle
b494bb2ac1
[d3d11] Fixed potential sync issue in Map()
2018-03-07 10:37:27 +01:00
Mikhail Paulyshka
9deb73a2a7
Add support for MSVC, attempt 3 ( #130 )
...
* [dxvk] fixes for MSVC
* nullptr -> int is illegal conversion for MSVC. nullptr was replaced with VK_NULL_HANDLE
* MSVC does not support source code strings longer than 65535 chars. String was replaced with array of chars.
* [utils] fixes for MSVC
* __mingw_uuidof() does not exists in MSVC
* apply GCC pragma only for GCC
* added missing header
* [dxbc] fixes for MSVC
*added missing header
* [dxgi] fixes for MSVC
* user __declspec(uuid()) instead of _mingw_uuidof()
* do not use DLLEXPORT macro for MSVC
* [d3d11] fixes for MSVC
* replace WINBOOL with BOOL
* do not declare D3D11 structs for MSVC
* do not use DLLEXPORT macro for MSVC
* [meson] fix build scripts for MSVC
* change cpp version from c++1z to c++latest for MSVC
* set -DOMINMAX definition for MSVC
* disable test and wine_utils for MSVC
* use .def files instead of __declspec(dllexport) for MSVC (bypass 'C2375: redefinition; different linkage' error)
* fix .def files for MinGW
* add --enable-stdcall-fixup linker flag for MinGW
2018-03-06 18:34:34 +01:00
Philip Rebohle
4fed7521f7
[d3d11] Enabled tessellation shaders
...
Note that applications that require tessellation support
will not work as of yet.
2018-03-06 17:02:47 +01:00
Philip Rebohle
13331a463f
[d3d11] Re-implement check for mapping device-local images
2018-03-06 11:35:12 +01:00
Philip Rebohle
1cbe6829eb
Revert "Add MSVC support ( #123 )"
...
This reverts commit c63d4361a0
.
2018-03-05 14:32:28 +01:00
Mikhail Paulyshka
c63d4361a0
Add MSVC support ( #123 )
...
* [utils] fixes for MSVC
* __mingw_uuidof() does not exists in MSVC
* apply GCC pragma only for GCC
* added missing header
* [dxvk] fixes for MSVC
* nullptr -> int is illegal conversion for MSVC. nullptr was replaced with VK_NULL_HANDLE
* MSVC does not support source code strings longer than 65535 chars. String was replaced with array of chars.
* [dxbc] fixes for MSVC
*added missing header
* [dxgi] fixes for MSVC
* user __declspec(uuid()) instead of _mingw_uuidof()
* [d3d11] fixes for MSVC
* replace WINBOOL with BOOL
* do not declare D3D11 structs
* [meson] fix build scripts for MSVC
* change cpp version from 1z to 17 for MSVC
* set -DOMINMAX definition for MSVC
* disable test and wine_utils for MSVC
* use .def files instead of __declspec(dllexport) (bypass 'C2375: redefinition; different linkage' error)
2018-03-05 14:28:51 +01:00
Philip Rebohle
484308347a
[d3d11] Treat D3D11SamplerState as state object
2018-03-05 02:21:34 +01:00
Philip Rebohle
7a6e20f3a8
[d3d11] Fixed CheckMultisampleQualityLevels return values
2018-03-05 01:08:26 +01:00
Philip Rebohle
9ede325c5b
Merge branch 'master' of https://github.com/doitsujin/dxvk
2018-03-05 01:07:58 +01:00
Mikhail Paulyshka
6c62d7608e
[d3d11] add stub for ID3DUserDefinedAnnotation ( #122 )
...
* [d3d11] D3D11DeviceContext::QueryInterface: log missing GUID
* [d3d11] suppress warnings for ID3DUserDefinedAnnotation and ID3D11Debug
2018-03-05 01:07:09 +01:00
Philip Rebohle
e8e5739978
[d3d11] Fixed potential crashes in InitImage/InitBuffer
2018-03-03 23:33:55 +01:00
Philip Rebohle
52f6ba1756
[dxvk] Fixed D3D11CreateDeviceAndSwapChain bug
...
Some applications may want to create a swap chain
without specifying a device or context pointer.
2018-03-03 23:15:15 +01:00
Philip Rebohle
c5bbf2d989
[d3d11] Fixed FinishCommandList
...
- ppCommandList is optional.
- We need to call RestoreState in order to set up the current context
state for the new command list.
2018-03-03 22:28:30 +01:00
Philip Rebohle
82ac381919
[d3d11] Move framebuffer creation out of OMSetRenderTargets
...
This might be useful when restoring context state.
2018-03-03 22:15:41 +01:00
Philip Rebohle
b469cfac0b
[d3d11] Implemented FinishCommandList/ExecuteCommandList
2018-03-03 20:59:17 +01:00
Philip Rebohle
d74db72add
[d3d11] Implemented CSGetUnorderedAccessViews
2018-03-01 07:02:39 +01:00
Philip Rebohle
757bb2bad7
[dxvk] Mark events and queries as available by default
...
Fixes a lockup in World of Warships, which waits for an event query
to be signaled without actually ever calling End() for that query.
2018-02-27 10:14:53 +01:00
Philip Rebohle
dc67cf730e
[d3d11] Add exception handling to CreateTexture* methods
2018-02-27 08:54:24 +01:00
Philip Rebohle
43b7e84bb5
[d3d11] Return fake tessellation shader obejects to the application
...
Prevents crashes in applications that use domain and hull shaders for
more than just rendering. Allows Fallout 4 tp run.
2018-02-26 17:29:10 +01:00
Philip Rebohle
e45d502fe4
[d3d11] Fix Create*Shader return values
...
When not writing back any shader object, we should be returning
S_FALSE instead of S_OK.
2018-02-26 17:04:45 +01:00
Philip Rebohle
c7acfb667f
[d3d11] Fix format for 1D RTVs and DSVs
2018-02-26 17:00:24 +01:00
Philip Rebohle
e4292adf29
[d3d11] Implemented 1D render target and depth-stencil views
...
An apitrace for Fallout 4 suggests that the game actually uses this.
2018-02-26 15:21:18 +01:00
Philip Rebohle
3ebafcc281
Revert "[d3d11] Remvoed query support"
...
This reverts commit 3d17eb68b9
.
2018-02-26 14:33:27 +01:00
Philip Rebohle
14845628c4
Revert "[d3d11] Fixed fake event query"
...
This reverts commit dbf3fd768d
.
2018-02-26 14:33:17 +01:00
Philip Rebohle
00f6262ff3
[dxbc] Properly implement Input/Output coverage masks
2018-02-26 14:23:41 +01:00
Philip Rebohle
eadf74264b
[d3d11] Return early for clear operations on NULL views
...
Fixes a crash in Fallout 4 when loading into the game.
2018-02-24 23:39:22 +01:00
Philip Rebohle
82fc851f32
[d3d11] Fixed CopySubresourceRegion for partial buffer updates
...
Fixes a subtle bug that caused the Fallout 4 menu to render random
geometry.
2018-02-23 15:16:44 +01:00
Philip Rebohle
dbf3fd768d
[d3d11] Fixed fake event query
2018-02-23 13:21:09 +01:00
Philip Rebohle
3d17eb68b9
[d3d11] Remvoed query support
...
Breaks too many games.
2018-02-23 13:17:24 +01:00
Philip Rebohle
e4dae74865
[dxvk] Validate tessellation state for graphics pipeline
...
This should help with freezes as long as Tessellation is
not properly implemented.
2018-02-23 12:55:23 +01:00
Philip Rebohle
8813ff979a
[d3d11] Allow UAVs to be created for the swap image
...
Fixes an issue with ComputeMark
2018-02-22 21:38:51 +01:00
Philip Rebohle
2b9ab6626a
[d3d11] Do not create views if the resource bind flags are invalid
2018-02-22 21:38:45 +01:00
Philip Rebohle
4c693fc262
[spirv] Added experimental spirv-tools integration
...
Added support for the validator in order to make debugging easier,
as well as the optimizer, which may help Nvidia users run DXVK.
2018-02-22 18:06:00 +01:00
Philip Rebohle
cb3daaf856
[dxvk] Change resolveImage interface to accept an explicit format
2018-02-20 22:26:23 +01:00
Philip Rebohle
43dbc9f1d6
[dxvk] Support depth-to-color image copies and vice versa
...
Fixes validation errors and depth of field effect in Neptunia VII
and potentially other games which do not use all depth images for
rendering.
2018-02-20 13:08:50 +01:00
Philip Rebohle
e89c7e9276
[d3d11] Added test case for occlusion queries and small improvements
2018-02-19 11:27:14 +01:00
Philip Rebohle
675a629ae5
[d3d11] Fixed crash with timestamp disjoint queries
2018-02-18 23:39:55 +01:00
Philip Rebohle
18c723fe8b
[d3d11] Remove leftover log message
2018-02-18 23:18:41 +01:00
Philip Rebohle
5fea615ed7
[dxvk] Implement backend part for event queries
2018-02-18 22:57:45 +01:00
Philip Rebohle
5334ff57bf
[d3d11] Wired up D3D11Query to backend
2018-02-18 22:34:23 +01:00
Philip Rebohle
7ae4904ae9
[dxvk] Relax feature requirements, minor fixes
2018-02-18 11:16:18 +01:00
pchome
fb3734ce49
[d3d11] Fix unhandled exception
...
With this patch The Witcher 3 can successfully load saved game.
2018-02-14 07:35:39 +02:00
Philip Rebohle
fba16e2a04
[d3d11] Added experimental support for RTVs into 3D images
2018-02-14 03:16:53 +01:00
Philip Rebohle
4965f8c318
[d3d11] Implemented SRV and RTV normalization
2018-02-14 01:29:50 +01:00
Philip Rebohle
5a42512028
[dxbc] Silence DclIndexRange warnings
2018-02-08 10:17:59 +01:00
Philip Rebohle
f4d679caa2
[d3d11] Enable sampleRateShading feature
2018-02-08 10:06:10 +01:00
Philip Rebohle
ad6c45d6b1
[dxvk] Improve debuggability of shader compiler issues
...
When using DXVK_LOG_LEVEL=debug, the graphics pipeline manager now
prints the names of the shaders used by the pipeline. This shall
help debug driver crashes in vkCreate*Pipelines.
2018-02-07 16:44:30 +01:00
Philip Rebohle
61ce7022e2
[d3d11] Fix optional write issue in GetData()
2018-02-07 12:35:40 +01:00
Philip Rebohle
b31ebbb690
[d3d11] Add support for DSV read-only flags
...
Games need this in order to use the depth buffer as both
a framebuffer attachment and a shader resource.
2018-02-06 17:31:23 +01:00
Philip Rebohle
83458c4467
[dxvk] Separated resource view classes
...
Since we are doing this for UAVs already, we should be
doing this for all view classes in order to account for
the minor differences between all of them.
2018-02-05 22:35:23 +01:00
Philip Rebohle
ad81d0bfa5
[general] Remove _vk prefix from DLL names
...
Fixes #56 .
2018-02-05 09:10:42 +01:00
Philip Rebohle
e25f4b2299
[d3d11] Implemented ClearUnorderedAccessViewUint for images
2018-02-04 23:57:43 +01:00
Philip Rebohle
495f58370c
[d3d11] Implemented CopySubresourceRegion for buffers
...
Also fixed a typo where ResolveSubresource would do the
wrong thing.
2018-02-03 21:14:55 +01:00
Philip Rebohle
14d5054893
[dxvk] Initial work on instance data fetch rates
...
Adds a pipeline flag to indicate that instanced
draw calls need to be emulated.
2018-02-01 20:15:25 +01:00
Clément Guérin
4050e8297f
[d3d11] mock D3D11_QUERY_EVENT
...
in addition to fix low framerate with vsync ON on Trackmania, this lets
GTA V show the loading screen.
2018-01-31 22:00:40 -08:00
Philip Rebohle
78c46f444a
[d3d11] Added missing CS thread sync for non-discard Map()
2018-01-31 16:39:47 +01:00
Philip Rebohle
f3ae248f39
[d3d11] Include <algorithm>
...
This apparently causes builds to fail on some platforms. Fixes #42 .
2018-01-31 01:57:43 +01:00
Philip Rebohle
c22dc143d1
[d3d119 Implemented DXVK_FEATURE_LEVEL to restrict D3D feature levels
2018-01-30 12:19:53 +01:00
Philip Rebohle
08436ad1e1
[d3d11] Get rid of duplicate code in ResolveSubresource
2018-01-30 02:20:28 +01:00
Philip Rebohle
6c6b108cdd
[d3d11] Handle non-multisampled source images in ResolveSubresource
2018-01-30 01:18:43 +01:00
Philip Rebohle
4aaa351225
[d3d11] Fixed query-related logging
...
Log messages in GetData did not take into account that
writing back data is actually optional.
2018-01-29 17:04:07 +01:00
Philip Rebohle
ca53eaf878
[general] Minor COM pointer improvements
2018-01-29 16:31:25 +01:00