Commit Graph

3806 Commits

Author SHA1 Message Date
Dr. Chat cbccc785cc TraceViewer: Build a tree of all command buffers and display that instead of a flat list. 2016-05-01 10:15:33 -05:00
Dr. Chat 6101b70641 Fix the Vulkan immediate drawer not drawing lines. 2016-04-29 13:09:39 -05:00
Dr. Chat 9b2e2a7275 SPIR-V: Hack in OpSelectionMerge as hints to NVidia's shader compiler (TODO: Make a Shader Compiler) 2016-04-13 23:17:03 -05:00
Dr. Chat 2bd603bf18 CircularBuffer: use std::list for allocations instead of a vector. 2016-04-09 21:40:18 -05:00
Dr. Chat 4811ebc2ce BufferCache: Use a CircularBuffer as the transient buffer. 2016-04-09 21:27:32 -05:00
Dr. Chat b7f2c93d73 SPIR-V: Batch predicated instructions together into a single block.
Add Post-Translation validation.
Fix a couple of type-related typos.
2016-04-09 21:03:44 -05:00
Dr. Chat a1c9540063 SPIR-V Validator util class 2016-04-09 18:35:00 -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 f9a634ad25 CircularBuffer remove Discard functionality and allow rotation 2016-04-01 21:53:46 -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
Dr. Chat 1ea72c5e06 FencedPool::CancelBatch 2016-04-01 21:49:58 -05:00
Dr. Chat 44cffab389 SPIR-V Max4 2016-03-25 18:23:45 -05:00
Dr. Chat fc1bd0f379 Fix texture uploads 2016-03-25 17:29:39 -05:00
Dr. Chat 692d666d57 Wipe the buffer cache in ClearCache for now. 2016-03-25 16:50:06 -05:00
Dr. Chat 0e44cda961 Update the rectangle list shader 2016-03-25 16:49:41 -05:00
Dr. Chat d7599c817f Formatting. 2016-03-25 16:44:25 -05:00
Dr. Chat a5a31cf123 VulkanShader::Prepare - return false if vkCreateShaderModule failed. 2016-03-25 16:37:24 -05:00
Dr. Chat 2bb40c122d Vulkan util Fence class 2016-03-25 16:36:21 -05:00
Dr. Chat f75e5fec24 CP: Use a single command buffer for every frame, reuse render passes/pipelines if not dirty
Hook up resolves and swaps
2016-03-25 16:35:34 -05:00
Dr. Chat 1e1da1eb6c PipelineCache::ConfigurePipeline - Inform the caller if the pipeline is dirty or they can reuse the previously bound pipeline.
Make SetDynamicState public.
2016-03-25 16:34:14 -05:00
Dr. Chat b2457d7e72 Basic texture uploads/address lookups/etc
Freeing of descriptor sets when the GPU is finished with them.
2016-03-25 16:32:29 -05:00
Dr. Chat 0e41774e36 RenderCache::dirty() - used to tell if we need to begin a new pass
Round all pixel pitch/heights up before dividing.
2016-03-25 16:31:12 -05:00
Dr. Chat 181b2af5a4 Vulkan Circular Buffer 2016-03-25 13:49:07 -05:00
Dr. Chat e72e283e79 Primitive type makes rasterization state dirty too! 2016-03-23 16:20:06 -05:00
Ben Vanik ea7bad1035 Merge pull request #562 from sephiroth99/fragfix
Fix usage of mix in fragment shader
2016-03-21 09:24:37 -07:00
Dr. Chat 7b962e59a4 SPIR-V Dst
Fix a few bugs in the translator
2016-03-20 14:21:55 -05:00
Dr. Chat 38b94dd9e2 Add in Xenos events 2016-03-17 21:58:23 -05:00
Dr. Chat 2512a6360e Pass the physical frontbuffer address into the CP 2016-03-17 21:55:47 -05:00
Dr. Chat 0e3c113375 Physical write watches -> access watches (read and/or write watching) 2016-03-17 21:55:16 -05:00
Dr. Chat 1831e7a936 Pipeline stencil state 2016-03-16 14:45:40 -05:00
Dr. Chat 54f89825d9 SPIR-V Dp2Add/Dp3 2016-03-15 00:30:39 -05:00
Dr. Chat 245102e9e5 RenderCache::BlitToImage 2016-03-12 22:04:32 -06:00
Dr. Chat 822d61c3d9 Fix a few stale data usage bugs in the pipeline cache.
Hook up part of depth/stencil tests/writes
2016-03-12 22:03:11 -06:00
Dr. Chat 5ba04b9e55 RenderCache::ClearEDRAMColor/ClearEDRAMDepthStencil 2016-03-12 11:49:59 -06:00
Dr. Chat 635d095b87 RenderCache: Track color target / depth target usage, refactor RawCopyToImage 2016-03-10 20:39:46 -06:00
Dr. Chat f903a559b3 Blit Vulkan CP output to the main window's swap chain 2016-03-10 13:01:39 -06:00
Dr. Chat f839a1293f Add a specialized copy command buffer to the vulkan swap chain 2016-03-10 12:59:48 -06:00
sephiroth99 90b54bbaa6 Fix usage of mix in fragment shader
The boolean value must be a vector too, where each bool component
selects whether the value of the output vector component is from the
first or the second source vector.
2016-03-10 01:14:42 -05:00
Dr. Chat 86cb40f0c6 Change how the render cache renders into EDRAM.
Rendering directly into the EDRAM buffer is bad because we don't know how the GPU lays out memory when it draws. Instead, we create temporary render targets and copy EDRAM contents to/from those temporary RTs before and after each draw.
2016-03-08 18:02:03 -06:00
Dr. Chat 4e27539709 Fix Vulkan texture drawing. 2016-03-08 17:57:04 -06:00
Dr. Chat af7fc20c38 Beginnings of texture conversion/uploads 2016-03-05 22:09:18 -06:00
Dr. Chat 8ca9c6f6f4 Fix spirv-tools incorrect includes 2016-03-03 20:11:23 -06:00
Dr. Chat 38094ac819 Updated local clang-format. 2016-03-02 21:17:34 -06:00
Dr. Chat 740c70f270 Scalar logc, fix log 2016-03-01 12:52:34 -06:00
Dr. Chat 48cf270724 Use spv::NoPrecision instead of DecorationInvariant
Set samplers/images as uniform constants
2016-02-27 16:21:37 -06:00
Dr. Chat c648e54539 Short-circuit draw calls if the render target's pitch is 0 2016-02-27 11:30:50 -06:00
Dr. Chat 6109e0b03a Fix incorrect images/samplers definitions
ps_param_gen and fix interpolators being copied incorrectly
2016-02-25 17:41:41 -06:00
Ben Vanik 652518ff59 Merge pull request #554 from DrChat/spv_translator
Fix texture fetches
2016-02-21 20:36:03 -08:00
Dr. Chat 08a287d2ad Whoops 2016-02-21 22:30:31 -06:00