Commit Graph

382 Commits

Author SHA1 Message Date
Philip Rebohle 47347e38da [dxbc] Shader decoder and compiler overhaul (1/2)
Major rewrite of the entire shader decoder to generate easy
to parse data structures for the compiler, which ultimately
allows new instructions to be implemented more easily.
2017-12-18 00:28:54 +01:00
Philip Rebohle 2f99be9546 [dxbc] Implemented conditional move and comparison instructions 2017-12-17 01:36:41 +01:00
Philip Rebohle ebabc0e578 [dxvk] Implemented proper swap chain synchronization 2017-12-16 21:30:48 +01:00
Philip Rebohle 1fe5b74762 Optimized command submission
Command submission now does not synchronize with the device every single
time. Instead, the command list and the fence that was created for it are
added to a queue. A separate thread will then wait for the execution to
complete and return the command list to the device.
2017-12-16 18:10:55 +01:00
Philip Rebohle d5a49698b4 [dxvk] Implemented new memory allocator with sub-allocation 2017-12-16 16:48:42 +01:00
Philip Rebohle 85120d2d01 [d3d11] Reverted some design decisions related to buffer renaming 2017-12-16 13:35:11 +01:00
Philip Rebohle d3b2174180 [dxvk] Implemented buffer renaming 2017-12-16 13:21:11 +01:00
Philip Rebohle d9f38a7f42 [d3d11] Minor restructuring 2017-12-15 19:11:10 +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 6de6421dfd [d3d11] Refactoring resource creation (1/2) - buffers 2017-12-14 15:59:55 +01:00
Philip Rebohle 40241e0b22 [dxvk] DxvkBufferBinding -> DxvkBufferSlice 2017-12-14 15:24:43 +01:00
Philip Rebohle 2ad5f49f3e [dxbc] Shader compiler rewrite (2/2) 2017-12-14 12:53:53 +01:00
Philip Rebohle bdce9a69fb [d3d11] Map() optimization removed, needs buffer renaming
The naive optimization to use staging buffers rather than actual mapping
turned out to be no more efficient than the previous approach. In order
to achieve good performance, buffer renaming must be implemented instead.
2017-12-14 12:29:41 +01:00
Philip Rebohle 4172b99952 [d3d11] Implemented naive Map() optimization when used with D3D11_MAP_WRITE_DISCARD 2017-12-13 17:49:08 +01:00
Philip Rebohle a4eb807215 [dxbc] Implemented SinCos, Min and Max instructions 2017-12-13 16:35:01 +01:00
Philip Rebohle 464a3e7d4e [dxbc] Shader compiler rewrite (1/2)
Rewrote most parts of the shader compiler and removed the old one. The next
step is to improve documentation and remove the remaining traces of the old
shader compiler.
2017-12-13 15:32:54 +01:00
Philip Rebohle a0db9198e3 [d3d11] Removed unnecessary Flush() 2017-12-12 15:39:31 +01:00
Philip Rebohle 3d4304096b [dxvk] Data buffer can now be created uninitialized 2017-12-12 15:39:20 +01:00
Philip Rebohle 0f26d1c627 [dxbc] Removed <optional> dependency 2017-12-12 13:00:37 +01:00
Philip Rebohle 2a266eaad4 [general] Added 32-bit support 2017-12-12 12:50:52 +01:00
Philip Rebohle 23abc82aa0 [dxvk] Added performance counter class 2017-12-12 10:29:17 +01:00
Philip Rebohle 180667ba65 [d3d11] Fixed depth function 2017-12-12 01:07:27 +01:00
Philip Rebohle 24feb7822d [d3d11] Added class linkage stub, required for FX11 samples 2017-12-12 01:07:07 +01:00
Philip Rebohle 3de427439b [dxvk] Added proper documentation for staging buffers 2017-12-12 00:41:56 +01:00
Philip Rebohle 5f0e94138e [dxvk] Implemented support for multisampled images and render targets 2017-12-12 00:27:49 +01:00
Philip Rebohle de47fa29e1 [dxvk] Refactored Vulkan device and instance destruction, now more RAII friendly 2017-12-11 19:48:00 +01:00
Philip Rebohle 5f8976fbd4 [d3d11] Fixed triangle strips 2017-12-11 19:38:13 +01:00
Philip Rebohle 68ca71d8a4 [dxvk] Implemented recycling of command buffers and staging buffers 2017-12-11 19:17:08 +01:00
Philip Rebohle 037e9a643d [d3d11] Fixed yet another ref counting bug 2017-12-11 17:01:38 +01:00
Philip Rebohle c3a29e9de0 [d3d11] Return success value when mapping succeeds instead of an error 2017-12-11 16:29:40 +01:00
Philip Rebohle 22c3cd80a1 [dxbc] Implemented mad instruction 2017-12-11 14:36:35 +01:00
Philip Rebohle c246e03594 [d3d11] Imlpemented some state queries 2017-12-11 14:21:24 +01:00
Philip Rebohle 50b7293b8f [d3d11] Implemented blend state and depth-stencil state binding 2017-12-11 14:11:18 +01:00
Philip Rebohle 352b46fe80 [d3d11] Refactored state object binding 2017-12-11 13:07:27 +01:00
Philip Rebohle 4144e3229a [d3d11] Implemented blend state creation 2017-12-11 13:03:07 +01:00
Philip Rebohle 9b9840754d [d3d11] Added depth-stencil state objects 2017-12-11 01:43:15 +01:00
Philip Rebohle 2d918df0f0 [d3d11] d3d11_state_rs -> d3d11_rasterizer 2017-12-10 23:27:20 +01:00
Philip Rebohle 93f79742e9 [dxbc] Scalar values can be expanded to multiple vector components during a store operation 2017-12-10 22:35:55 +01:00
Philip Rebohle d941446ca0 [dxbc] Fixed bug in decoder that would return wrong component masks 2017-12-10 21:13:22 +01:00
Philip Rebohle 5739e2f60f [dxvk] Added component mapping to image view info 2017-12-10 20:06:07 +01:00
Philip Rebohle 9acc9bf3e0 [dxbc] Implemented Rsq instruction 2017-12-10 20:01:38 +01:00
Philip Rebohle 4a3b04f605 [dxgi] Mapping DXGI's RGBX formats fo Vulkan RGBA formats, needs testing 2017-12-10 19:47:38 +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 cd4f21a0c3 [d3d11] Implemented buffer mapping 2017-12-10 17:36:32 +01:00
Philip Rebohle 52f1c4fa00 [dxvk] Implemented staging buffers for large data transfers 2017-12-10 15:57:51 +01:00
Philip Rebohle 89ec199c34 [d3d11] Re-implemented shader read 2017-12-10 12:21:33 +01:00
Philip Rebohle b4493d90d8 [dxbc] Initial support for sample instruction 2017-12-10 12:08:20 +01:00
Philip Rebohle 7c03495d74 [dxbc] Implemented shader resource declaration for images 2017-12-10 10:34:18 +01:00
Philip Rebohle 939faeaf27 [dxbc] Implemented sampler declaration 2017-12-10 03:39:35 +01:00
Philip Rebohle 9c997120e1 [d3d11] Implemented shader resource binding 2017-12-10 01:56:07 +01:00
Philip Rebohle 9a86178604 [d3d11] Fixed severe reference-counting issue in state objects 2017-12-10 00:55:30 +01:00
Philip Rebohle 3d6e88428a [com] ... yeah, almost. 2017-12-09 23:20:31 +01:00
Philip Rebohle fa1ef8248e [com] Fixed crashes caused by reentrant Release() 2017-12-09 22:20:40 +01:00
Philip Rebohle 2b86a2f1f3 [d3d11] Changed the way default pipeline state is restored 2017-12-09 21:39:56 +01:00
Philip Rebohle 1160810687 [d3d11] Implemented sampler binding 2017-12-09 21:17:26 +01:00
Philip Rebohle e335c817bc [d3d11] Implemented sampler creation 2017-12-09 20:49:56 +01:00
Philip Rebohle 50e8b35291 [d3d11] Minor fixes to D3D11Device::CheckMultisampleQualityLevels 2017-12-09 19:44:06 +01:00
Philip Rebohle 8e3c14d8ab [d3d11] Cleaned up view creation a bit 2017-12-09 19:36:38 +01:00
Philip Rebohle 1e6c11e3f2 [d3d11] Implemented shader resource view creation for 2D textures 2017-12-09 19:06:51 +01:00
Philip Rebohle f484454854 [d3d11] Device children actually do hold a reference to the device 2017-12-09 15:57:05 +01:00
Philip Rebohle 12d4e68b24 [d3d11] Implemented multisample format support check 2017-12-09 14:46:23 +01:00
Philip Rebohle c92d68417e [dxgi] Bumped DxgiDevice to IDXGIDevice1 2017-12-09 14:45:52 +01:00
Philip Rebohle 4a0ff5343a [dxgi] Added more format mappings 2017-12-09 14:41:37 +01:00
Philip Rebohle d539c3e384 [d3d11] Allow the creation of fake D3D11 WARP and REF devices 2017-12-09 13:43:14 +01:00
Philip Rebohle b3c391d071 [d3d11] Implemented depth-stencil binding and clear methods 2017-12-09 03:53:42 +01:00
Philip Rebohle a43bb134e0 [dxvk] Initial support for format info 2017-12-09 02:44:59 +01:00
Philip Rebohle 36e6ba4ebc [d3d11] Replaced resource view classes by a generic template 2017-12-09 02:09:13 +01:00
Philip Rebohle bfb05f24b8 [dxbc] Implemented support for MUL instruction 2017-12-09 01:49:30 +01:00
Philip Rebohle e0495c6ecb [d3d11] Fixed pixel shader constant buffer bindings 2017-12-09 01:40:15 +01:00
Philip Rebohle a35b128860 [dxvk] Attachment clears do not need barriers 2017-12-09 01:25:52 +01:00
Philip Rebohle 685023750d [d3d11] Fixed uniform buffer barrier 2017-12-09 01:25:32 +01:00
Philip Rebohle 3ad4ed8264 [d3d11] Implemented depth-stencil view creation 2017-12-08 23:25:38 +01:00
Philip Rebohle 88c58320ee [d3d11] Implemented texture creation 2017-12-08 23:13:15 +01:00
Philip Rebohle c90bc3e946 [dxbc] Implemented proper resource slot mapping 2017-12-08 22:30:41 +01:00
Philip Rebohle feab720ddb [spirv] Added methods to force type declaration for arrays and structs 2017-12-08 19:50:36 +01:00
Philip Rebohle 0610296248 [d3d11] Implemented constant buffer binding 2017-12-08 19:39:33 +01:00
Philip Rebohle e872448ca3 [dxbc] Refactored shader compiler to return a DxvkShader 2017-12-08 18:14:05 +01:00
Philip Rebohle a2f66025f8 [dxbc] Implemented constant buffers 2017-12-08 17:08:26 +01:00
Philip Rebohle 9f4cc6b77d [dxbc] Minor cleanups 2017-12-08 15:30:12 +01:00
Philip Rebohle 8887e8b2fa [dxbc] Implemented interpolation modes for pixel shader inputs 2017-12-08 14:56:34 +01:00
Philip Rebohle bd8dc20fa2 [dxbc] User-defined shader interface cannot be an array due to interpolation modes 2017-12-08 14:18:30 +01:00
Philip Rebohle 0843349d72 [dxbc] Added interpolation mode decoder 2017-12-08 13:24:08 +01:00
Philip Rebohle e3533fb634 [dxbc] Implemented user-defined shader interface 2017-12-08 12:59:08 +01:00
Philip Rebohle 26dc8e2dd8 [tests] Updated D3D11 triangle sample 2017-12-08 11:19:12 +01:00
Philip Rebohle 4a4f5bea29 [util] Added missing files 2017-12-08 11:18:23 +01:00
Philip Rebohle 56826cbf82 [d3d11] Implemented index buffer binding 2017-12-08 01:51:49 +01:00
Philip Rebohle 9e1cf8396b [dxvk] Added environment variable to toggle debug layers 2017-12-08 01:32:02 +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 2a2e179b91 [d3d11] Fixed initial context state setup and viewport orientation 2017-12-07 18:38:54 +01:00
Philip Rebohle b7e263fc73 [dxbc] Added highly experimental shader input/output interface code 2017-12-07 16:29:34 +01:00
Philip Rebohle 3cf9582187 [d3d11] Added default constant state objects 2017-12-07 14:22:23 +01:00
Philip Rebohle 05ef218326 [d3d11] Implemented vertex buffer binding 2017-12-07 14:03:15 +01:00
Philip Rebohle a901a85401 [dxvk] Added support for vertex index types 2017-12-07 14:01:17 +01:00
Philip Rebohle be7a70a307 [d3d11] Implemented buffer creation 2017-12-07 13:31:32 +01:00
Philip Rebohle 5bf4ae7048 [d3d11] Initial work on buffer creation 2017-12-07 13:18:12 +01:00
Philip Rebohle 1f89452014 [d3d11] Implemented input layout creation 2017-12-07 12:45:02 +01:00
Philip Rebohle f33acf7334 [dxvk] Modified interface to accept dynamic vertex buffer strides 2017-12-07 11:39:59 +01:00
Philip Rebohle bf17c61579 [d3d11] Implemented shader binding 2017-12-07 10:12:48 +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 e95dc64c77 [dxgi] Removed unused members from DxgiSwapChain 2017-12-07 00:56:13 +01:00
Philip Rebohle ddb1627985 [d3d11] D3D11DeviceChild subclasses must not store strong references to their parent device 2017-12-07 00:55:21 +01:00
Philip Rebohle 69b938118d [general] Fixed write conflicts in logger 2017-12-06 23:36:11 +01:00
Philip Rebohle f794d6c398 [dxgi] Fixed SRGB format feature requirements 2017-12-06 23:28:07 +01:00
Philip Rebohle bcb193a7fc [d3d11] Removed unnecessary feature requirement 2017-12-06 19:14:59 +01:00
Philip Rebohle 5944410d2c [tests] Removed dxvk dependency for d3d11 and dxgi tests 2017-12-06 19:06:23 +01:00
Philip Rebohle dece62c70a [d3d11] Implemented basic shader creation methods 2017-12-06 18:54:01 +01:00
Philip Rebohle 9017af51ec [utils] Added SHA-1 implementation for shader code hashing 2017-12-06 18:13:51 +01:00
Philip Rebohle 8934ab0fc7 [d3d11] Added stubs for shader classes 2017-12-06 14:16:14 +01:00
Philip Rebohle c7e1131864 [d3d11] Implemented rasterizer state creation 2017-12-06 13:16:54 +01:00
Philip Rebohle f990fcaa01 [d3d11] Implemented rasterization state and viewports 2017-12-06 12:11:59 +01:00
Philip Rebohle fadcac5a8e [dxgi] Fixed swap chain issue in ResizeTargets 2017-12-05 15:24:58 +01:00
Philip Rebohle 77ca0a84b7 Revert "[dxgi] Removed SDL dependencies from DxgiSwapChain"
This reverts commit 245ba75123.
2017-12-05 15:20:03 +01:00
Philip Rebohle 245ba75123 [dxgi] Removed SDL dependencies from DxgiSwapChain 2017-12-05 14:43:03 +01:00
Philip Rebohle 34ed79dacc [dxvk] Added explicit image flags 2017-12-05 14:41:58 +01:00
Philip Rebohle af30fb3c25 [dxgi] CreateDXGIFactory now accepts IDXGIFactory1 as a target interface 2017-12-05 14:05:18 +01:00
Philip Rebohle e0df25a7c5 [dxvk] Implemented proper image memory barriers 2017-12-05 13:00:06 +01:00
Philip Rebohle 7c1064e3eb [d3d11] Moved render target state to OM state struct 2017-12-05 12:59:35 +01:00
Philip Rebohle f1ee761290 [dxgi] DxgiPresenter now picks format depending on swap chain format 2017-12-04 22:21:02 +01:00
Philip Rebohle 365f992a97 [d3d11] CreateRenderTargetView now uses proper format 2017-12-04 13:47:18 +01:00
Philip Rebohle cf33315c0c [d3d11] Some cleanup work 2017-12-04 13:39:37 +01:00
Philip Rebohle 60992143b1 [dxvk] Added render target queries for framebuffers 2017-12-04 13:39:14 +01:00
Philip Rebohle 9fa6592b7d [dxgi] Added initial support for format conversion 2017-12-04 11:33:04 +01:00
Philip Rebohle 1b77d58a2a [dxgi] Fixed hardcoded swap chain format 2017-12-03 21:36:44 +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 7ec8e727d2 [d3d11] Device creation now logs requested feature levels 2017-12-02 19:07:48 +01:00
Philip Rebohle ac2d16599c [d3d11] Implemented proper feature tests 2017-12-02 16:47:06 +01:00
Philip Rebohle e051498621 [d3d11] Added enum to stringfunctions 2017-12-02 16:46:53 +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 802fbe3cfd [dxvk] Some minor refactoring 2017-12-01 14:27:53 +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 004bc88e0c [d3d11] ClearRenderTargetView now handles unbound images as well 2017-12-01 00:52:39 +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
Philip Rebohle 5acc65504f [dxgi] Added DxgiPresenter to render back buffers to the swap chain 2017-11-29 21:46:09 +01:00
Philip Rebohle b389c9ea1f [d3d11] Experimental implementation of OMSetRenderTargets and ClearRenderTargetView 2017-11-29 20:19:40 +01:00
Philip Rebohle b35f0c64b4 [dxgi] Refactored swap chain <-> device communication 2017-11-29 16:23:33 +01:00
Philip Rebohle 33dc4583fb [dxgi] Fixed resource interface queries 2017-11-29 15:33:25 +01:00
Philip Rebohle a956c1b8ac [dxgi] Added DxgiResource for image and buffer creation 2017-11-29 15:16:07 +01:00
Philip Rebohle 9fedd0187b [dxgi] Implemented back buffer creation 2017-11-29 08:29:12 +01:00
Philip Rebohle 5bd3fdc11a [dxvk] Added documentation to image view and image create info structs 2017-11-29 08:28:45 +01:00
Philip Rebohle ad9f71fa02 [dxgi] Implemented DxgiSwapChain::GetBuffer and more of Present 2017-11-29 07:55:44 +01:00
Philip Rebohle 0c3a68c519 [d3d11] D3D11Texture2D stub 2017-11-27 15:52:24 +01:00
Philip Rebohle 0cdc13d785 [dxgi] Renamed private DXGI interfaces 2017-11-27 15:51:53 +01:00
Philip Rebohle c572a9c393 [dxvk] Implemented image creation 2017-11-27 12:01:35 +01:00
Philip Rebohle 0e5cae826f [dxgi] DXVK swap chain creation plus some experimental Present code 2017-11-26 18:38:50 +01:00
Philip Rebohle 187c5aa092 [dxgi] DxgiAdapter::GetDesc now returns correct adapter name 2017-11-26 16:18:32 +01:00
Philip Rebohle f5dd030074 [dxgi] Implemented IDXGIFactory1 and IDXGIAdapter1 extensions 2017-11-26 16:12:11 +01:00
Philip Rebohle 26e662e12c [dxgi] Implemented SDL-backed DxgiSwapChain methods 2017-11-26 15:29:57 +01:00
Philip Rebohle f3a37068bb [dxgi] Implemented DxgiSwapChain interface queries 2017-11-26 14:02:08 +01:00
Philip Rebohle f924931d2d [general] Removed TRACE calls for now 2017-11-26 14:01:41 +01:00
Philip Rebohle c82bddb932 [dxvk] Added buffer copy and initial buffer barriers 2017-11-26 13:24:01 +01:00
Philip Rebohle d225744c98 [d3d11] Wired up draw calls and dispatch calls to the underlying DXVK context 2017-11-23 14:24:23 +01:00
Philip Rebohle 64d9ad0027 [dxvk] Added dispatch call 2017-11-23 14:24:00 +01:00
Philip Rebohle 47bdf9408b [dxvk] Added buffer view class 2017-11-21 19:50:57 +01:00
Philip Rebohle a47ebd6ed5 [dxvk] Proper blend state and viewport state setup 2017-11-20 15:35:29 +01:00
Philip Rebohle 8bb0325928 [dxvk] Implemented graphics pipeline creation 2017-11-20 14:11:09 +01:00
Philip Rebohle a9a03fec69 [dxvk] DxvkShader creates a VkShaderModule again 2017-11-20 14:03:00 +01:00
Philip Rebohle a895b0159b [dxvk] Added constant state object binding functions 2017-11-20 13:38:24 +01:00
Philip Rebohle ae0c186f26 [dxvk] Implemented constant state objects 2017-11-20 13:21:27 +01:00
Philip Rebohle 745466652c [dxvk] Removed shader resource slots for now, needs work 2017-11-18 10:42:27 +01:00
Philip Rebohle a84e2eabc2 [dxvk] Restructured state tracker again 2017-11-17 19:49:44 +01:00
Philip Rebohle abc0e98761 [dxbc] Added result modifiers, simple add instruction 2017-11-17 11:41:56 +01:00
Philip Rebohle 4c0404d3c6 [dxbc] Removes shader input/output interfaces for now, needs more work 2017-11-17 11:41:46 +01:00
Philip Rebohle cded7726a7 [dxbc] Added pixel shader code generator stub 2017-11-16 02:07:10 +01:00
Philip Rebohle 5d26f0fb0c [dxbc] Implemented operand modifiers and load/store stuff 2017-11-16 01:30:17 +01:00
Philip Rebohle 901abe4356 [dxbc] Implemented some very basic load/store operations 2017-11-13 02:07:13 +01:00
Philip Rebohle 43dfba2287 [dxbc] Separate code generator classed for each shader type 2017-11-13 00:22:52 +01:00
Philip Rebohle 403ab75aeb [dxbc] More sophisticated component mask/swizzle classes 2017-11-07 15:11:09 +01:00
Philip Rebohle 4052951542 [dxbc] Removed most of the DXBC compiler again 2017-11-07 15:10:38 +01:00
Philip Rebohle 9cdc341946 [dxbc] Some shader signature stuff 2017-11-01 16:43:04 +01:00
Philip Rebohle 72f353074f [dxbc] Initial xSGN chunk implementation 2017-11-01 00:01:40 +01:00
Philip Rebohle bc8cc76888 [dxbc] Added operand index decoder, entry point declaration 2017-10-29 02:35:16 +02:00
Philip Rebohle f5ad024f5d [dxbc] Implemented temporary register declarations 2017-10-26 16:32:10 +02:00
Philip Rebohle 200da4cf60 [spirv] Added SpirvModule class to generate SPIR-V code 2017-10-26 15:40:39 +02:00
Philip Rebohle 294586eeb3 [dxbc] Instruction decoder work 2017-10-25 13:49:13 +02:00
Philip Rebohle 79e2236958 [dxbc] Some more decoding stuff 2017-10-22 23:13:29 +02:00
Philip Rebohle 6954cfd84c [dxbc] Added helper classes for DXBC decoding 2017-10-21 17:58:58 +02:00
Philip Rebohle 1bf05d3687 [spirv] Moved SPIR-V-specific stuff to separate directory 2017-10-18 10:36:47 +02:00
Philip Rebohle 72a87093c5 [dxvk] Moved some SPIR-V bits to separate directory 2017-10-18 09:50:30 +02:00
Philip Rebohle c1e9d3236f [dxbc] Added type info struct 2017-10-17 13:02:57 +02:00
Philip Rebohle 77f38c33c4 [dxvk] Removed DxvkDevice::createShader method 2017-10-16 20:42:32 +02:00
Philip Rebohle 0a57a4ddf5 [dxbc] Figuring out how to best generate SPIR-V module code 2017-10-16 19:53:17 +02:00
Philip Rebohle aebe359509 [dxvk] Added ID counter for SPIR-V code generation 2017-10-16 19:52:54 +02:00
Philip Rebohle 8728e6e101 [d3d11] Build with DXBC compiler 2017-10-16 17:50:39 +02:00
Philip Rebohle bb5b588d23 [dxbc] Added DXBC to SPIR-V compiler stub 2017-10-16 17:50:09 +02:00