Commit graph

149 commits

Author SHA1 Message Date
Jean-Philip Desjardins
4fe199b34c Limit workgroup size using device caps. 2021-09-29 18:42:47 -04:00
Jean-Philip Desjardins
9056ae1755 Fix issues with xfer compute job.
- Limit size of workgroup size with device limits.
- Align buffer to what the device requires.

Seems to help fix issues with some Mali devices.
2021-09-29 16:47:42 -04:00
Jean-Philip Desjardins
fb803c3f4e Fix validation error. 2021-09-28 10:57:17 -04:00
Jean-Philip Desjardins
4e5eb8f534 Style fix. 2021-09-25 10:31:27 -04:00
Jean-Philip Desjardins
e0f5e464d0 Add definitions to select which Vulkan flavor we want to use.
Not the best mechanism, but this now allows both flavors to live in the same branch.
2021-09-24 21:59:21 -04:00
Jean-Philip Desjardins
3158db669b Post rebase fixes. 2021-09-24 13:01:29 -04:00
Jean-Philip Desjardins
68cc2280b8 Add input attachment descriptor pool. 2021-09-24 13:00:43 -04:00
Jean-Philip Desjardins
3457a338e9 TEMP: Disable fragment shader interlock requirement. 2021-09-24 13:00:40 -04:00
Jean-Philip Desjardins
336cfd20c3 Add depth support. 2021-09-24 12:56:19 -04:00
Jean-Philip Desjardins
cce900052c Just some WIP. Nothing works yet. 2021-09-24 12:56:19 -04:00
Jean-Philip Desjardins
06b4753d6d Use a dynamic struct chain for vkCreateDevice.
We'll need to disable some stuff for mobile.
2021-09-24 11:03:48 -04:00
Jean-Philip Desjardins
6e8209508f Refactor first pass in prep for mobile vulkan merge. 2021-09-18 12:11:16 -04:00
Jean-Philip Desjardins
4064c4c5e0 Use GetDisplayBounds. 2021-09-03 13:28:55 -04:00
Jean-Philip Desjardins
e162749d28 Add another texture read format. 2021-08-31 17:53:44 -04:00
Jean-Philip Desjardins
86b66ec9aa Allow enabling/disabling various GS features for frame debugger. 2021-08-31 16:40:26 -04:00
Jean-Philip Desjardins
54eb88c51b Don't flush transfers if using HWREG.
Fixes render issues in Tales of Legendia.
2021-08-20 17:36:29 -04:00
Jean-Philip Desjardins
e333c8f661 Add GetTexture in GSH Vulkan. 2021-08-20 17:17:49 -04:00
Jean-Philip Desjardins
fcd7483f5f Style fix. 2021-08-20 11:42:29 -04:00
Jean-Philip Desjardins
095e4e4e8d Use scale from GS handler. 2021-08-20 11:11:45 -04:00
Jean-Philip Desjardins
98ec433431 Make QtFramedebugger independent of GSH OpenGL. 2021-08-20 10:37:49 -04:00
Jean-Philip Desjardins
6c23cb5c3e Remove unused ReadFramebuffer function. 2021-08-20 09:52:34 -04:00
Jean-Philip Desjardins
8c38434937 Make surface optional in Vulkan.
For offscreen rendering.
2021-08-18 19:26:40 -04:00
Jean-Philip Desjardins
0921b535bd Move some frame dump logic in GSHandler.
Use the proper functions to sync memory.
2021-08-18 17:16:25 -04:00
Jean-Philip Desjardins
cd30ca16cc Implement FBA GS register. 2021-08-09 12:48:40 -04:00
Jean-Philip Desjardins
39f4f46c2e Fix blending formulae and test color clamping. 2021-08-06 11:16:04 -04:00
Jean-Philip Desjardins
cfb81ed686 Add support for points in Vulkan. 2021-07-14 14:07:46 -04:00
Jean-Philip Desjardins
e9bc722810 Style fix. 2021-07-13 15:26:31 -04:00
Jean-Philip Desjardins
2a0d712e0e Build Vulkan on Android.
Nothing works yet.
2021-07-13 15:25:41 -04:00
Jean-Philip Desjardins
c047f414b6 Add missing descriptor type. 2021-07-13 15:25:41 -04:00
Jean-Philip Desjardins
77eb2d3090 Apply style fixes. 2021-06-29 08:14:27 -04:00
Jean-Philip Desjardins
6d0e4f7ce0 Vulkan iOS build. 2021-06-24 07:56:56 -04:00
Jean-Philip Desjardins
8e21d1acf2 Update Vulkan API version required. 2021-04-28 10:15:02 -04:00
Jean-Philip Desjardins
fefc16d1a9 Make sure RAM copy doesn't go out of bounds. 2021-04-27 13:51:58 -04:00
Jean-Philip Desjardins
0ff4ea7de1
Merge pull request #1029 from Zer0xFF/V_8_16bit
Vulkan: use 8/16 bit writes when possible
2021-04-27 13:50:24 -04:00
Jean-Philip Desjardins
6e39978990 Restrict/optimize further. 2021-04-12 15:39:33 -04:00
Jean-Philip Desjardins
03e5b3bd6e When output buffer pointers and texture pointer are the same, sample off a RAM copy. 2021-04-12 11:42:42 -04:00
Mahmood - Zer0xFF
9f35520540 add required vulkan features 2021-04-01 23:36:16 +01:00
Jean-Philip Desjardins
0461e8d70b Make GS memory local to the GPU.
Greatly reduces GPU usage (almost half).
2021-03-30 16:01:37 -04:00
Jean-Philip Desjardins
77791ab8d1 Make memory types explicit. 2021-03-30 16:01:36 -04:00
Jean-Philip Desjardins
6dec2d2dec Add scan mask support on Vulkan. 2021-03-24 16:56:14 -04:00
Jean-Philip Desjardins
1d5e048ce4 Textured line support. 2021-03-24 16:56:13 -04:00
Jean-Philip Desjardins
88f26b01d7 Use the prefered name for Vulkan validation layer. 2021-03-08 12:26:33 -05:00
Jean-Philip Desjardins
75ca4fb563 MoltenVK now supports Vulkan 1.1. 2020-12-20 11:30:44 -05:00
jpd002
0459d377b2 Enable textures on lines. 2020-09-22 08:45:59 -04:00
jpd002
460455ca84 Implement line rendering in Vulkan. 2020-09-22 08:45:59 -04:00
jpd002
54b148d312 Flush image transfer if we get a register write. 2020-07-25 14:31:44 -04:00
jpd002
a8b8115405 Enable linear filtering in some scenarios. 2020-05-27 20:08:01 -04:00
jpd002
3a14b4dae1 Add support for some missing pixel formats. 2020-05-27 20:08:01 -04:00
Jean-Philip Desjardins
83e31d7d2d Allow Vulkan instance to be created without validation layer active.
We wanna be as minimalist as possible when we just enumerate devices.
2020-04-29 17:52:20 -04:00
Jean-Philip Desjardins
9ac74bc9e1 Fix code style. 2020-04-29 09:18:41 -04:00