Commit Graph

78 Commits

Author SHA1 Message Date
Triang3l
0d14ae01bb [D3D12] Allow non-adaptive tessellation for patch primitive types, and all triangle and quad tessellation modes 2020-05-11 22:40:52 +03:00
Triang3l
3aa0ce3096 [GPU] Shader translator refactoring (mostly ALU), fixes for disassembly round trip and write masks 2020-05-08 23:57:51 +03:00
Triang3l
f83809f7a1 [D3D12] Non-adaptive quad tessellation 2020-04-19 23:12:39 +03:00
Triang3l
630a538af3 [D3D12] Reword shader storage error messages 2020-04-14 13:46:18 +03:00
gibbed
aa1c69d7b6 [D3D12] Properly setup shareable shader storage.
[D3D12] Properly setup shareable shader storage.

- Properly create shareable shader storage directory.
- Log errors when failing to create shareable shader storage directory
  or shareable shader files.
2020-04-14 00:58:30 -05:00
Sandy Carter
69bcf59c79 filesystem: use std for CreateFolder
Remove custom platform implementation of `CreateFolder` and replace uses
with `std::filesystem::create_directories` which creates paths
recursively.
2020-04-09 09:44:48 -05:00
Triang3l
acb3778819 [D3D12] Adaptive quad tessellation, remove d3d12_tessellation_adaptive cvar 2020-04-09 00:00:11 +03:00
gibbed
a48bb71c2f Overhaul logging. 2020-04-07 16:09:41 -05:00
gibbed
5bf0b34445 C++17ification.
C++17ification!

- Filesystem interaction now uses std::filesystem::path.
- Usage of const char*, std::string have been changed to
  std::string_view where appropriate.
- Usage of printf-style functions changed to use fmt.
2020-04-07 16:09:41 -05:00
Triang3l
9d36c257b0 [D3D12] Non-adaptive triangle tessellation 2020-04-07 18:55:43 +03:00
Triang3l
283c3ab59b [D3D12/DXBC] Fix a couple of tessellation-related comments 2020-04-06 00:19:29 +03:00
Triang3l
4b9f63cdf1 [GPU] Shader::HostVertexShaderType enum for domain shader types 2020-04-06 00:03:23 +03:00
Triang3l
e82d05c687 [D3D12] Pass adaptive tessellation factors via index buffer like on the guest 2020-04-05 17:22:49 +03:00
Triang3l
cde092ece1 [D3D12] Persistent shader and PSO storage 2020-03-21 19:22:19 +03:00
Triang3l
1336316139 [D3D12] Vertex kill and multipass vertex exports 2020-02-20 08:56:16 +03:00
Triang3l
d18e63e6e2 [D3D12] Always write original shader source in DXBC if PIX is attached 2020-02-16 18:09:22 +03:00
Triang3l
c43ccc073d [D3D12] Submit command lists on primary buffer end 2019-12-04 21:42:26 +03:00
Triang3l
6e5a0ebf7b [D3D12] CP: Separate guest frame and non-frame submissions 2019-10-28 22:00:59 +03:00
Triang3l
a9ed73bdd1 [GPU] Remove most hardcoded register/instruction layouts from common and D3D12 code 2019-10-20 19:40:37 +03:00
Triang3l
f83269cf8c [GPU] Refactor: Register structs in D3D12CommandProcessor and some other places 2019-10-19 23:32:38 +03:00
Triang3l
352f12f92e [D3D12] Switch from gflags to cvars 2019-08-03 16:53:23 +03:00
Triang3l
7a88789ebd [D3D12] RB_STENCILREFMASK_BF and stencil constants cleanup 2019-07-14 23:49:30 +03:00
Triang3l
4825e69fda [D3D12] Cleanup primitive types and front/back facing 2019-07-13 22:25:03 +03:00
Triang3l
6672997108 [D3D12] ROV early Z and full rewrite, shader scalar optimizations 2019-07-11 09:31:58 +03:00
Triang3l
8f51855c8f Revert "[D3D12] Re-add accidentally deleted RT update trigger and treat Z test and write bits separately"
This reverts commit 25cc189e99.
2019-04-12 20:04:50 +03:00
Triang3l
25cc189e99 [D3D12] Re-add accidentally deleted RT update trigger and treat Z test and write bits separately 2019-04-12 19:13:03 +03:00
Triang3l
9dd62c1e15 [D3D12] Alpha to coverage (w/o dithering) with RTV, tiny AtoC fixes 2019-01-21 23:41:47 +03:00
Triang3l
cf3ce4f98b [D3D12] Unhardcode forgotten pipeline creation thread count 2019-01-15 21:04:17 +03:00
Triang3l
ef523823d5 [D3D12] Force early Z with DSV, fix blend disabled flag in rb_colorcontrol ignored 2019-01-11 17:07:33 +03:00
Triang3l
d7ed044be1 [D3D12] Don't cull points and rectangles 2019-01-09 16:25:03 +03:00
Triang3l
aabe6dec9c [D3D12] Fix log level of pipeline creation messages 2019-01-08 14:14:14 +03:00
Triang3l
1523a1f662 [D3D12] Use 3/4 of logical cores for pipeline creation, cleanup pipeline log messages 2019-01-04 14:30:26 +03:00
Triang3l
890228b6f3 [D3D12] Prototype multithreaded PSO creation 2019-01-04 00:30:11 +03:00
Triang3l
a97fc28ee2 [D3D12] Use multimap for pipelines 2019-01-01 23:13:26 +03:00
Triang3l
1cea4062c0 [D3D12] Rewrite pipeline cache for compact storage of pipeline descriptions 2019-01-01 22:20:50 +03:00
Triang3l
317e5c3ce2 [D3D12] Some stats in the profiler, tweak tiled buffer heap sizes 2018-12-30 15:09:58 +03:00
Triang3l
87d663d7e0 [D3D12] Disable adaptive tessellation temporarily because of cracks 2018-12-29 21:12:21 +03:00
Triang3l
928e46c8b2 [D3D12] Adaptive tessellation of triangle patches 2018-12-29 20:53:41 +03:00
Triang3l
cbfc00f80e [D3D12] Debug option to display tessellation as wireframe 2018-12-28 14:37:39 +03:00
Triang3l
c84511a5f1 [GPU/D3D12] Update tessellation enums 2018-12-19 18:23:54 +03:00
Triang3l
574f85cc15 [D3D12] Refactoring: DXBC -> Dxbc 2018-12-14 13:25:07 +03:00
Triang3l
2b646ff425 [D3D12] Fake per-edge tessellation with continuous 2018-12-12 22:12:32 +03:00
Triang3l
bb53d722f9 [D3D12] Don't use switch in shaders on Intel, log GPU name 2018-12-03 16:31:49 +03:00
Triang3l
9a58841219 [D3D12] ROV: Use MSAA instead of SSAA 2018-11-25 16:37:38 +03:00
Triang3l
14b623465c [D3D12] ROV: ForcedSampleCount=1 for safety 2018-11-21 20:53:11 +03:00
Triang3l
43f34d804a [D3D12] Load D3D dynamically 2018-10-23 19:21:01 +03:00
Triang3l
2d56c9ae30 [D3D12] ROV: Empty pixel shader for depth-only drawing 2018-10-16 14:02:43 +03:00
Triang3l
67e5cb8681 [D3D12] ROV: Disable RTs when using ROV 2018-10-10 16:37:35 +03:00
Triang3l
6d2e74325c [D3D12] ROV: Check if supported 2018-10-10 14:30:29 +03:00
Triang3l
64209748e3 [D3D12] Better polygon offset scale 2018-09-29 12:01:09 +03:00