Commit Graph

209 Commits

Author SHA1 Message Date
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
96a61bc623 [DXBC] All prologues and epilogues to new DXBC code 2020-04-26 13:51:25 +03:00
Triang3l
1799585e92 [DXBC] Control flow to new DXBC code 2020-04-25 19:30:01 +03:00
Triang3l
64a83af137 [DXBC] Cleanup StartPixelShader, always_reads_mask, and ps_param_gen overall 2020-04-25 00:20:27 +03:00
Triang3l
f83809f7a1 [D3D12] Non-adaptive quad tessellation 2020-04-19 23:12:39 +03:00
Triang3l
58c104e0cc [DXBC] SRV binding enum 2020-04-15 23:53:37 +03:00
Triang3l
0f0ed0eb21 [DXBC] RDEF enums, ISGN/PCSG/OSGN structs and enums 2020-04-11 20:25:37 +03:00
Triang3l
acb3778819 [D3D12] Adaptive quad tessellation, remove d3d12_tessellation_adaptive cvar 2020-04-09 00:00:11 +03: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
b47948b7cf [DXBC] Fix another copy-paste kVSDS typo 2020-04-07 19:19:08 +03:00
Triang3l
306f2947ec [DXBC] Fix a copy-paste kDSVS typo 2020-04-07 19:18:21 +03: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
8da8044771 [DXBC] Move cvars from D3D12 to GPU 2020-04-05 17:23:38 +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
5d6fe38e6f [DXBC] Vertex shader prologue and gamma to new DXBC code 2020-04-05 13:13:55 +03:00
Triang3l
a4ffcd5175 [D3D12] Update DXBC contribution notes 2020-03-23 00:13:54 +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
b59ae30ec3 [D3D12] DXBC: Fix two uninitialized register usages in ROV code, better comments 2020-02-13 08:31:01 +03:00
Triang3l
014d03193e [D3D12] Convert dxbc_shader_translator_om.cc to new DXBC emission code 2020-02-10 23:50:26 +03:00
Triang3l
85fb028faa [D3D12] Cleaner DXBC emission code, port ROV prologue to it 2020-02-07 09:42:43 +03:00
Triang3l
4061445087 [GPU] Remove unused kConstantInt/Bool shader operands 2020-02-02 21:05:00 +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
5e30f3a947 [D3D12] User clip planes and constant/signature refactoring 2019-04-10 16:37:06 +03:00
Triang3l
0367e1a536 [D3D12] Fix ps_param_gen rounding ignored with ROV 2019-04-05 23:57:29 +03:00
Triang3l
189ffca234 [D3D12] DXBC: Fix aL incrementing 2019-01-25 22:43:16 +03:00
Triang3l
a1a1110784 [D3D12] Non-indexed line loops 2019-01-15 14:19:59 +03:00
Triang3l
17dfd84f71 [D3D12] Free two alphatest-related system constant dwords 2019-01-15 12:58:36 +03:00
Triang3l
27a8e4259e [D3D12] DXBC: Fix 0*anything check with negated operands 2019-01-12 18:52:06 +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
75ec48d225 [D3D12] DXBC: Don't declare shared memory SRV in the depth-only pixel shader 2019-01-06 18:41:54 +03:00
Triang3l
928e46c8b2 [D3D12] Adaptive tessellation of triangle patches 2018-12-29 20:53:41 +03:00
Triang3l
ed09cac440 [D3D12] DXBC: vfetch RoundIndex, vertex index signedness fixes 2018-12-28 08:11:34 +03:00
Triang3l
ec7667ce1b [D3D12] Broken memexport shader code 2018-12-27 20:43:17 +03:00
Triang3l
bd9aae016f [D3D12] DXBC: eA and eM registers 2018-12-22 19:51:12 +03:00
Triang3l
e803ee84d5 [D3D12] Bind shared memory as UAV with memexport 2018-12-22 15:39:47 +03:00
Triang3l
645f450321 [D3D12] DXBC: Fix UAV and sampler operands 2018-12-22 14:26:18 +03:00
Triang3l
0aeff797e5 [D3D12] DXBC: Allocate multiple registers with PushSystemTemp 2018-12-21 22:54:26 +03:00
Triang3l
c84511a5f1 [GPU/D3D12] Update tessellation enums 2018-12-19 18:23:54 +03:00
Triang3l
cbba86fcf0 [D3D12] Split DXBC shader translator into multiple files 2018-12-19 14:24:16 +03:00
Triang3l
2de0e26606 [D3D12] DXBC: Remove ugly useless indexable temp fallback 2018-12-16 13:03:03 +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
1ee3ed03fd [D3D12] DXBC: Skip loading and some ALU ops for identical operands 2018-12-09 00:20:13 +03:00