Philip Rebohle
b7ce9660c3
[d3d11] Implemented CopySubresourceRegion for images
2017-12-30 19:10:45 +01:00
Philip Rebohle
793ea6d914
[dxvk] Descriptor set updates now use descriptor type info
...
This fixes an issue where the wrong resource would be used for a
descriptor set update if multiple resources have been bound to a
single resource slot.
2017-12-29 15:06:33 +01:00
Philip Rebohle
8691d29185
[dxvk] Initial support for post-compute barriers
2017-12-29 01:09:54 +01:00
Philip Rebohle
24bceb86c2
[dxvk] Fixed 3D image upload
2017-12-24 15:29:10 +01:00
Philip Rebohle
82b2c40405
[dxvk] Simplified resource binding
...
The backend no longer differentiates between compute pipeline
resources and graphics pipeline resources.
2017-12-23 15:11:23 +01:00
Philip Rebohle
84190369ab
[d3d11] Optimized resource binding methods
2017-12-20 17:37:46 +01:00
Philip Rebohle
2ed2d892d6
[dxvk] Optimized resource binding
...
Fixes a few bottlenecks that were encountered in the Cascading Shadow
Maps demo from the Microsoft SDK. Performance is now slightly better
than wined3d with CSMT, MESA_NO_ERROR and mesa_glthread enabled.
2017-12-20 12:13:08 +01:00
Philip Rebohle
f68655feff
[dxvk] Separated buffer renaming from allocation
2017-12-20 02:58:36 +01:00
Philip Rebohle
342e99a11c
[dxvk] Optimized descriptor updates
2017-12-19 19:36:44 +01:00
Philip Rebohle
da2cc5a6a0
[dxvk] Fixed resource binding with invalidated buffers
...
When invalidating a constant buffer, the descriptor was not
updated, which usually led to the wrong resource being used
and could also cause crashes.
This fix also includes resource tracking for shader resources
on the graphics pipeline. The code needs to be made compatible
with the compute pipeline as well.
2017-12-19 01:08:48 +01:00
Philip Rebohle
c44b50ae4d
[dxvk] Fixed bug where resource bindings would not be updated after rebinding the pipeline
2017-12-18 16:16:21 +01:00
Philip Rebohle
4d01517dd8
[d3d11] Geometry shader prep work
2017-12-18 12:53:53 +01:00
Philip Rebohle
38b989ec91
[dxvk] vkCmdUpdateBuffer can only be used if both offset and size are aligned to four bytes
2017-12-18 12:44:18 +01:00
Philip Rebohle
d3b2174180
[dxvk] Implemented buffer renaming
2017-12-16 13:21:11 +01:00
Philip Rebohle
c0a963ae5b
[dxvk] Renamed DxvkBufferSlice methods for convenience
2017-12-14 19:11:13 +01:00
Philip Rebohle
4502816bb6
[dxvk] Renamed DxvkBufferSlice methods for convenience
2017-12-14 19:09:53 +01:00
Philip Rebohle
9827ace3b0
[d3d11] Fixed buffer bindings with non-zero offsets
2017-12-14 19:07:08 +01:00
Philip Rebohle
40241e0b22
[dxvk] DxvkBufferBinding -> DxvkBufferSlice
2017-12-14 15:24:43 +01:00
Philip Rebohle
5f0e94138e
[dxvk] Implemented support for multisampled images and render targets
2017-12-12 00:27:49 +01:00
Philip Rebohle
50b7293b8f
[d3d11] Implemented blend state and depth-stencil state binding
2017-12-11 14:11:18 +01:00
Philip Rebohle
4144e3229a
[d3d11] Implemented blend state creation
2017-12-11 13:03:07 +01:00
Philip Rebohle
b4f85a2c2f
[d3d11] Fixed mip-mapped texture creation
2017-12-10 19:10:17 +01:00
Philip Rebohle
c0f5b46f81
[dxvk] Added proper support for block-compressed image formats
2017-12-10 18:14:28 +01:00
Philip Rebohle
52f1c4fa00
[dxvk] Implemented staging buffers for large data transfers
2017-12-10 15:57:51 +01:00
Philip Rebohle
4a0ff5343a
[dxgi] Added more format mappings
2017-12-09 14:41:37 +01:00
Philip Rebohle
b3c391d071
[d3d11] Implemented depth-stencil binding and clear methods
2017-12-09 03:53:42 +01:00
Philip Rebohle
a35b128860
[dxvk] Attachment clears do not need barriers
2017-12-09 01:25:52 +01:00
Philip Rebohle
0610296248
[d3d11] Implemented constant buffer binding
2017-12-08 19:39:33 +01:00
Philip Rebohle
b7723ad6f6
[dxvk] Wrong framebuffer was used in renderPassEnd()
2017-12-08 01:18:37 +01:00
Philip Rebohle
b49815657e
[dxvk] Refactored blend state
2017-12-08 01:06:48 +01:00
Philip Rebohle
6a9743ead7
[dxvk] Refactored blend state
2017-12-08 00:51:20 +01:00
Philip Rebohle
84605a1310
[dxvk] Refactored input layout state
2017-12-08 00:44:58 +01:00
Philip Rebohle
385c92db5a
[dxvk] Refactoring of most constant state objects
2017-12-08 00:02:43 +01:00
Philip Rebohle
796c200e32
[dxvk] Major refactoring of graphics pipeline state lookup in order to support more dynamic state
2017-12-07 21:47:38 +01:00
Philip Rebohle
ade00add8d
[dxvk] Removed buffer stride stuff for now, we need a better solution
2017-12-07 19:28:54 +01:00
Philip Rebohle
27e63cbdc6
[d3d11] Implemented small buffer uploads
2017-12-07 18:51:41 +01:00
Philip Rebohle
a901a85401
[dxvk] Added support for vertex index types
2017-12-07 14:01:17 +01:00
Philip Rebohle
f33acf7334
[dxvk] Modified interface to accept dynamic vertex buffer strides
2017-12-07 11:39:59 +01:00
Philip Rebohle
93c719cadf
[dxvk] Reintroduced dirty pipeline state flag
2017-12-07 09:44:45 +01:00
Philip Rebohle
19851c8432
[dxvk] Re-implemented pipeline creation within the backend
2017-12-07 09:38:31 +01:00
Philip Rebohle
e0df25a7c5
[dxvk] Implemented proper image memory barriers
2017-12-05 13:00:06 +01:00
Philip Rebohle
b5d068366d
[dxvk] Implemented shader resource binding
2017-12-03 20:23:26 +01:00
Philip Rebohle
a6bf7659b0
[dxvk] Refactored shader binding, client APIs must now create pipelines and pipeline layouts
2017-12-03 00:40:58 +01:00
Philip Rebohle
7de5a727ad
[dxgi] Added proper initialization of the swap chain back buffer
2017-12-02 11:46:25 +01:00
Philip Rebohle
57821db900
[dxvk] Added image init functions to context
2017-12-01 17:52:05 +01:00
Philip Rebohle
cc408e3329
[dxvk] Barrier interface cleanup
2017-12-01 10:51:58 +01:00
Philip Rebohle
c936709aec
[dxvk] Moved context flags out of context state object
2017-12-01 10:27:33 +01:00
Philip Rebohle
4e39ef859b
[dxvk] More convenient command list assignment API
2017-12-01 10:08:49 +01:00
Philip Rebohle
27905d0711
[dxvk] Removed Recorder interface and deferred context
2017-12-01 09:50:47 +01:00
Philip Rebohle
4b6d8264e7
[dxvk] Added method to clear images that are not bound for rendering
2017-12-01 00:52:13 +01:00