Commit Graph

91 Commits

Author SHA1 Message Date
Dr. Chat
366eeeaa60 Vulkan TextureCache: Use a hashed and fenced pool for descriptors 2017-01-28 14:05:42 -06:00
Dr. Chat
90b0541d72 Vulkan CP: Code refactoring 2017-01-28 14:05:42 -06:00
Dr. Chat
c416cbb61d Vulkan CP: Specify wait stage for swap sync 2017-01-28 14:05:42 -06:00
Dr. Chat
9135b6d9ac Vulkan: Support accessing only depth buffer via shaders 2017-01-28 14:05:42 -06:00
Dr. Chat
ba74667190 Vulkan: Initialize RenderPassCreateInfo flags variable to 0. 2017-01-28 14:05:42 -06:00
Dr. Chat
16fc719b14 Vulkan: Passthrough unused point size/coord in geometry shaders 2017-01-28 14:05:42 -06:00
Dr. Chat
9f5abb02b7 Vulkan: Fix improper subpass dependency when using the MAY_ALIAS bit 2017-01-14 18:04:05 -06:00
gibbed
a95de67b8c 1D textures. Maybe. 2017-01-10 00:04:41 -06: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
Dan Weatherford
c1db89b4dd Eliminate double lock of Vulkan queue mutex 2016-11-11 23:07:49 -06:00
Dr. Chat
1afb899b7d Also track batch fences in the CP properly 2016-11-08 19:41:35 -06:00
Dr. Chat
48f6ba747c Track batch fences with the batches. 2016-11-08 18:11:12 -06:00
Dr. Chat
69be82c786 Attempt at synchronizing swap image writes between the main window and graphics backend.
Disabled for now due to device timeouts.
2016-10-21 19:44:11 -05: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
Dr. Chat
784e6a7593 RenderCache: Include a subpass self-dependency due to aliased attachments 2016-08-16 13:11:25 -05:00
Dr. Chat
a7e4bc8f49 Applying graceful linting. 2016-08-01 16:36:41 -05:00
Dr. Chat
99090e0a22 CircularBuffer: Allow users to bind their own memory to our buffer. 2016-08-01 16:30:28 -05:00
Dr. Chat
ff57d79793 TextureCache: Flush uploads if the staging buffer overflows in a frame. 2016-08-01 13:25:44 -05:00
Dr. Chat
6af8546c49 Vulkan: Remove unused gl_ClipDistance from shaders 2016-07-28 12:02:49 -05:00
Dr. Chat
99689176bc Vulkan: Fix a few validation errors 2016-07-28 00:15:23 -05:00
Dr. Chat
19c7edddca PipelineCache: _FLOAT means use vk _SFLOAT, not _*SCALED! 2016-07-25 12:06:50 -05:00
Dr. Chat
91be5f979e Use a dummy pixel shader on depth-only mode 2016-07-24 15:38:00 -05:00
Dr. Chat
b478408dfb PipelineCache: Better stencil support, and allow null pixel shaders. 2016-07-24 15:36:41 -05:00
Dr. Chat
ab4245c6af VGT_INDX_OFFSET actually means index/vertex offset
Fixup depth resolves
2016-06-24 14:35:24 -05:00
Dr. Chat
6729ec182b These clears are redundant. 2016-06-19 21:32:31 -05:00
Dr. Chat
f194d261b1 TextureCache: Speed up descriptor writes (no more vector usage)
WIP TextureCube uploading skeleton
2016-06-19 21:27:30 -05:00
Dr. Chat
d526d2febf GPU: In auto-indexed draws, VGT_INDX_OFFSET appears to be reused as a vertex offset. 2016-06-17 20:19:38 -05:00
Dr. Chat
b01903ccc7 Set basePipelineIndex to -1 instead of 0 to indicate invalid. 2016-06-05 12:55:19 -05:00
Dr. Chat
6f5f3534c4 Rebuild shaders with the latest compiler 2016-06-04 15:17:31 -05:00
Dr. Chat
254acf2a67 RenderCache: Hardcode surface height to 2560
Fix a couple of other things
2016-06-03 20:01:49 -05:00
Dr. Chat
2a924d2b05 Pass vertex buffer endianness into the BufferCache
IssueCopy: Actually issue the pipeline barrier to transition the image
2016-06-03 20:00:28 -05:00
Dr. Chat
f8d9472872 TextureCache: Fix trying to erase a resolve texture that isn't in the resolve textures list. 2016-05-26 14:46:18 -05:00
Dr. Chat
c85756981b TextureCache: Fix a few null pointer bugs
Ordering of in-flight descriptor sets
Change staging buffer size
Free all samplers on exit
2016-05-25 19:55:50 -05:00
Dr. Chat
8611417219 Initialize rasterDiscardEnable to VK_FALSE 2016-05-25 17:45:38 -05:00
Dr. Chat
008167fa66 VK: Enable full rotation / Set render_state to nullptr on failure / Fix format info in texture resolves 2016-05-25 13:49:36 -05:00
Dr. Chat
9d1e66ab16 Don't write to color targets in depth-only mode. 2016-05-24 21:58:02 -05:00
Dr. Chat
5f764730ae Vulkan CP: Override frame traces if renderdoc is attached 2016-05-23 13:16:13 -05:00
Dr. Chat
7004f83665 CP: Don't check for shader validity here
Fix a lousy typo in PrepareTextureSet
2016-05-22 20:08:35 -05:00
Dr. Chat
bd27835a3d Pipeline Cache: Translate shaders when program cntl register is available 2016-05-22 20:03:13 -05:00
Dr. Chat
b025790207 Disable Vulkan native MSAA by default for now. 2016-05-17 05:58:52 -05:00
Dr. Chat
79f1193130 Vulkan CP: Fix calculating an invalid copy destination base address when sizeof(texel) != 4 2016-05-06 00:12:47 -05:00
Dr. Chat
7c5042add7 Vulkan CP: Add in separate swap-chain images
Some other changes I can't remember
2016-05-03 14:12:05 -05:00
Dr. Chat
f2af28c322 TextureCache: Fix up some synchronization flaws (deleting in-use textures/etc)
Fix texture binding IDs not matching fetch instruction IDs.
Fix some bad texture format matching.
Add access watches
2016-05-03 14:10:15 -05:00
Dr. Chat
8e8df2e778 PipelineCache: Support shader disasm dumps for nvidia cards.
Fix MSAA 2X multiplier.
2016-05-03 14:07:20 -05:00
Dr. Chat
d18c99aab6 RenderCache: Account for MSAA when calculating tile sizes.
Add a new flag to enable native MSAA (this does not work properly at the moment)
2016-05-03 14:05:34 -05:00
Dr. Chat
4811ebc2ce BufferCache: Use a CircularBuffer as the transient buffer. 2016-04-09 21:27:32 -05:00
Dr. Chat
3726064af5 Can't use CmdCopyBufferToImage or vice versa for depth and stencil. 2016-04-01 22:03:29 -05:00
Dr. Chat
50f72b4e42 Enable native MSAA
Copy back EDRAM buffers in order by base offset.
2016-04-01 21:52:39 -05:00
Dr. Chat
2eca3ce9e6 Texture uploads/basic formats
Fixed swizzle one/zero mismatch
Sampler setup
Remove samplers from the descriptor set layout
2016-04-01 21:51:17 -05:00