Commit Graph

70 Commits

Author SHA1 Message Date
Triang3l
46202dd27a [Vulkan] Basic texture descriptor set allocation/binding 2022-05-17 22:42:28 +03:00
Triang3l
862c457761 [Vulkan] Use Shader::IsHostVertexShaderTypeDomain 2022-05-15 16:19:36 +03:00
Triang3l
73d574a046 [Vulkan] Rectangle and quad list geometry shader generation 2022-05-10 21:48:18 +03:00
Triang3l
b88f715140 Merge branch 'master' into vulkan 2022-05-03 00:13:17 +03:00
Triang3l
0acb97d383 [Vulkan] EDRAM range ownership transfers, resolve clears, 2x-as-4x MSAA
Transfers are functional on a D3D12-like level, but need additional work so fallbacks are used when multisampled integer sampled images are not supported, and to eliminate transfers between render targets within Vulkan format compatibility classes by using different views directly.
2022-04-03 16:40:29 +03:00
Triang3l
c75e0dd19e [Vulkan] Blend and depth/stencil state, small pipeline cleanup 2022-02-15 23:00:21 +03:00
Triang3l
8ccb00d03d [SPIR-V] Store vfetch_full address in a variable 2022-02-07 23:00:23 +03:00
Triang3l
270469d4d4 [Vulkan] Basic framebuffer output 2021-06-19 14:16:24 +03:00
Triang3l
6cd9d42fd0 Merge branch 'master' into vulkan 2021-06-08 12:15:34 +03:00
Triang3l
913e1e949c [GPU] Ownership-transfer-based RT cache, 3x3 resolution scaling
The ROV path is also disabled by default because of lower performance
2021-04-26 22:12:09 +03:00
Triang3l
2bc0113dae [GPU] Add missing override specifier to SPIR-V shader translator 2020-12-25 21:11:43 +03:00
Triang3l
e6fa0ad139 [GPU] Dynamic r# count via shader modifications + refactoring 2020-12-19 16:14:54 +03:00
Triang3l
4617dc5569 Merge branch 'master' into vulkan 2020-12-13 20:04:12 +03:00
Triang3l
9a4643d0f2 [GPU] Non-ROV f24 trunc/round, host shader modifications, cache dir 2020-12-07 22:31:46 +03:00
Triang3l
a94301d967 [Vulkan] Viewport from draw_util and vtx_fmt 2020-11-18 12:48:12 +03:00
Triang3l
715d614f5e [Vulkan] Float controls properties 2020-11-15 15:08:50 +03:00
Triang3l
65c8d2b28e [Vulkan] Basic draw call architecture + [D3D12] Some cleanup 2020-11-14 14:16:04 +03:00
Triang3l
d7341f9873 [Vulkan] Internal descriptor set layouts 2020-11-07 14:03:31 +03:00
Triang3l
a82b85a8ac [SPIR-V] vfetch: 32_* and 32_*_FLOAT formats 2020-11-04 23:56:12 +03:00
Triang3l
533bdf2114 [SPIR-V] Shared memory SSBOs 2020-11-04 18:57:08 +03:00
Triang3l
8665fa7517 [SPIR-V] Vertex index writing to r0.x 2020-11-03 23:31:52 +03:00
Triang3l
06b47d1df0 [SPIR-V] Scalar addition and multiplication 2020-11-01 20:42:59 +03:00
Triang3l
1acc5eff05 [SPIR-V] Vector mul, mad 2020-10-31 17:56:46 +03:00
Triang3l
52a8ed8e6d [SPIR-V] Version, float controls 2020-10-31 16:22:15 +03:00
Triang3l
738cb0b847 [SPIR-V] Result storing 2020-10-29 22:07:02 +03:00
Triang3l
4dba2d8d89 [SPIR-V] Operand loading 2020-10-27 22:48:47 +03:00
Triang3l
1c83c8dcfa [SPIR-V] Instruction predication 2020-10-26 22:12:01 +03:00
Triang3l
556c8de2ab [SPIR-V] Loops 2020-10-25 20:24:48 +03:00
Triang3l
fdbed73463 [Vulkan/SPIR-V] Some pipeline layout parts + exec conditionals 2020-10-25 15:09:39 +03:00
Triang3l
7846245b66 [SPIR-V] Main program counter switch 2020-10-18 15:36:02 +03:00
Triang3l
1de144938c [SPIR-V] Main loop blocks, validation 2020-10-16 19:55:41 +03:00
Triang3l
b3339d7e46 [SPIR-V] Some initial bits of the translator 2020-10-11 20:22:15 +03:00
Triang3l
7b93670dbd [Vulkan] Remove old Vulkan code, change shaders directory, create empty Vulkan backend 2020-08-31 21:44:29 +03:00
Triang3l
66a9c9d812 [GPU] Store ALU result after both vector and scalar instructions 2019-04-20 20:30:01 +03:00
Triang3l
9a58841219 [D3D12] ROV: Use MSAA instead of SSAA 2018-11-25 16:37:38 +03:00
gibbed
8064926999 [Vulkan] Implement support for color_exp_bias. 2018-05-19 15:45:13 -05:00
gibbed
77b097098d [GPU] Add color_exp_bias to push constants. 2018-05-19 14:39:32 -05:00
Dr. Chat
62bee78edd [SPIR-V] Declare DepthReplacing if we replace depth 2018-04-29 18:43:31 -05:00
DrChat
86f387ed42 [SPIR-V] Fix 1D texture fetches. Fixes #1124 2018-04-20 15:25:07 -05:00
DrChat
6794b4975c [SPIR-V] Use texture sample calls with constant offset 2018-04-13 21:06:45 -05:00
DrChat
d31db60a75 [SPIR-V] tfetch UseRegisterLOD support 2018-03-01 13:46:44 -06:00
DrChat
77da785d70 [Vulkan] Use locally generated texture binding indices instead of GPU indices 2018-02-22 21:00:54 -06:00
DrChat
fe9c83c15b [Vulkan] First working version of dynamic vfetch! 2018-02-18 23:22:02 -06:00
DrChat
f3f1a7fe42 [SPIR-V] Update glslang
WIP new vertex fetching
2018-02-18 20:13:38 -06:00
DrChat
fb89973266 [SPIR-V] Add support for loops 2017-12-22 22:23:28 -06:00
gibbed
42533d39eb Vulkan: Assume all 1D texture sampling is actually sampling a 2D texture. 2017-08-08 16:35:19 -05:00
Vlad Ivanov
bb9a26702d gpu: spirv_shader_translator: xb format changes 2017-02-07 21:24:06 +03:00
Dan Weatherford
6f6e638f2f [vulkan] Point list rendering improvements
Implement register and vertex-shader-written point size. Fix point size
computation in geometry shader (convert pixel size to NDC scale using
viewport size). Fix point sprite coordinate generation.
2016-11-12 18:03:03 -06:00
Dr. Chat
9457c63a64 SPIR-V: Handle conversion of integer vertex input 2016-09-07 11:13:53 -05:00
Dr. Chat
300d1c57ba SPIR-V: Rewrite basic control-flow to use a while loop paired with a switch statement 2016-09-05 16:57:02 -05:00