Commit Graph

  • bd27835a3d Pipeline Cache: Translate shaders when program cntl register is available Dr. Chat 2016-05-22 20:03:13 -05:00
  • d1b4d61b52 SPIR-V: Use the register count from the program control register Workaround for broken OpBitFieldUExtract on NVIDIA drivers kRcpc/kRcpf/kRsqc/kRsqf Fix broken ps_ usage Dr. Chat 2016-05-22 20:01:42 -05:00
  • d94ff6eb25 Shaders: Track the register count from the program control register (if available) Dr. Chat 2016-05-22 19:58:50 -05:00
  • 1faf5a813a Fix ALU scalar swizzles (Possibly) Dr. Chat 2016-05-22 19:57:05 -05:00
  • b025790207 Disable Vulkan native MSAA by default for now. Dr. Chat 2016-05-17 05:58:52 -05:00
  • f2ca689ea0 Expanded vec128 and VectorSub Haydn Trigg 2016-05-17 05:34:09 +09:30
  • 44284a780c SPIR-V: Misc. IR utility functions Dr. Chat 2016-05-15 14:27:44 -05:00
  • b9a40d1a00 Use Vulkan as the default graphics backend. Dr. Chat 2016-05-15 12:08:29 -05:00
  • 2bb52ef86b SPIR-V: WIP shader compiler / optimizations / alpha test implementation Dr. Chat 2016-05-15 12:01:38 -05:00
  • c06a7cdf81 BaseFencedPool::has_open_batch (and other uncommitted changes) Dr. Chat 2016-05-07 19:17:56 -05:00
  • 79f1193130 Vulkan CP: Fix calculating an invalid copy destination base address when sizeof(texel) != 4 Dr. Chat 2016-05-05 23:42:36 -05:00
  • 7c5042add7 Vulkan CP: Add in separate swap-chain images Some other changes I can't remember Dr. Chat 2016-05-03 14:12:05 -05:00
  • 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 Dr. Chat 2016-05-03 14:10:15 -05:00
  • 8e8df2e778 PipelineCache: Support shader disasm dumps for nvidia cards. Fix MSAA 2X multiplier. Dr. Chat 2016-05-03 14:07:20 -05:00
  • 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) Dr. Chat 2016-05-03 14:05:34 -05:00
  • aa038fbf23 Skip the wrapping packet end after parsing IB end (to avoid false draws appearing) Dr. Chat 2016-05-01 15:48:31 -05:00
  • 065f777e67 Merge branch 'vulkan' of github.com:benvanik/xenia into spv_translator Dr. Chat 2016-05-01 11:25:16 -05:00
  • 720f8b0dc2 GL4: Track the internal format of render targets and match them based on that. Dr. Chat 2016-05-01 11:18:46 -05:00
  • cbccc785cc TraceViewer: Build a tree of all command buffers and display that instead of a flat list. Dr. Chat 2016-05-01 10:15:33 -05:00
  • 6101b70641 Fix the Vulkan immediate drawer not drawing lines. Dr. Chat 2016-04-29 13:09:39 -05:00
  • 9b2e2a7275 SPIR-V: Hack in OpSelectionMerge as hints to NVidia's shader compiler (TODO: Make a Shader Compiler) Dr. Chat 2016-04-13 23:17:03 -05:00
  • 2bd603bf18 CircularBuffer: use std::list for allocations instead of a vector. Dr. Chat 2016-04-09 21:40:18 -05:00
  • 4811ebc2ce BufferCache: Use a CircularBuffer as the transient buffer. Dr. Chat 2016-04-09 21:27:32 -05:00
  • b7f2c93d73 SPIR-V: Batch predicated instructions together into a single block. Add Post-Translation validation. Fix a couple of type-related typos. Dr. Chat 2016-04-09 21:03:44 -05:00
  • a1c9540063 SPIR-V Validator util class Dr. Chat 2016-04-09 18:35:00 -05:00
  • 3726064af5 Can't use CmdCopyBufferToImage or vice versa for depth and stencil. Dr. Chat 2016-04-01 22:03:29 -05:00
  • f9a634ad25 CircularBuffer remove Discard functionality and allow rotation Dr. Chat 2016-04-01 21:53:46 -05:00
  • 50f72b4e42 Enable native MSAA Copy back EDRAM buffers in order by base offset. Dr. Chat 2016-04-01 21:52:39 -05:00
  • 2eca3ce9e6 Texture uploads/basic formats Fixed swizzle one/zero mismatch Sampler setup Remove samplers from the descriptor set layout Dr. Chat 2016-04-01 21:51:17 -05:00
  • 1ea72c5e06 FencedPool::CancelBatch Dr. Chat 2016-04-01 21:49:58 -05:00
  • 44cffab389 SPIR-V Max4 Dr. Chat 2016-03-25 18:23:45 -05:00
  • fc1bd0f379 Fix texture uploads Dr. Chat 2016-03-25 17:29:39 -05:00
  • 692d666d57 Wipe the buffer cache in ClearCache for now. Dr. Chat 2016-03-25 16:50:06 -05:00
  • 0e44cda961 Update the rectangle list shader Dr. Chat 2016-03-25 16:49:41 -05:00
  • d7599c817f Formatting. Dr. Chat 2016-03-25 16:44:25 -05:00
  • a5a31cf123 VulkanShader::Prepare - return false if vkCreateShaderModule failed. Dr. Chat 2016-03-25 16:37:24 -05:00
  • 2bb40c122d Vulkan util Fence class Dr. Chat 2016-03-25 16:36:21 -05:00
  • f75e5fec24 CP: Use a single command buffer for every frame, reuse render passes/pipelines if not dirty Hook up resolves and swaps Dr. Chat 2016-03-25 16:35:34 -05:00
  • 1e1da1eb6c PipelineCache::ConfigurePipeline - Inform the caller if the pipeline is dirty or they can reuse the previously bound pipeline. Make SetDynamicState public. Dr. Chat 2016-03-25 16:34:14 -05:00
  • b2457d7e72 Basic texture uploads/address lookups/etc Freeing of descriptor sets when the GPU is finished with them. Dr. Chat 2016-03-25 16:32:29 -05:00
  • 0e41774e36 RenderCache::dirty() - used to tell if we need to begin a new pass Round all pixel pitch/heights up before dividing. Dr. Chat 2016-03-25 16:31:12 -05:00
  • 181b2af5a4 Vulkan Circular Buffer Dr. Chat 2016-03-25 13:45:44 -05:00
  • e72e283e79 Primitive type makes rasterization state dirty too! Dr. Chat 2016-03-23 16:19:18 -05:00
  • ea7bad1035 Merge pull request #562 from sephiroth99/fragfix Ben Vanik 2016-03-21 09:24:37 -07:00
  • 7b962e59a4 SPIR-V Dst Fix a few bugs in the translator Dr. Chat 2016-03-20 14:21:55 -05:00
  • 38b94dd9e2 Add in Xenos events Dr. Chat 2016-03-17 21:58:23 -05:00
  • 2512a6360e Pass the physical frontbuffer address into the CP Dr. Chat 2016-03-17 21:55:47 -05:00
  • 0e3c113375 Physical write watches -> access watches (read and/or write watching) Dr. Chat 2016-03-17 21:55:16 -05:00
  • 1831e7a936 Pipeline stencil state Dr. Chat 2016-03-16 14:45:40 -05:00
  • 54f89825d9 SPIR-V Dp2Add/Dp3 Dr. Chat 2016-03-15 00:30:39 -05:00
  • 245102e9e5 RenderCache::BlitToImage Dr. Chat 2016-03-12 22:04:32 -06:00
  • 822d61c3d9 Fix a few stale data usage bugs in the pipeline cache. Hook up part of depth/stencil tests/writes Dr. Chat 2016-03-12 22:03:11 -06:00
  • 5ba04b9e55 RenderCache::ClearEDRAMColor/ClearEDRAMDepthStencil Dr. Chat 2016-03-12 11:49:59 -06:00
  • 635d095b87 RenderCache: Track color target / depth target usage, refactor RawCopyToImage Dr. Chat 2016-03-10 20:39:46 -06:00
  • f903a559b3 Blit Vulkan CP output to the main window's swap chain Dr. Chat 2016-03-10 13:01:39 -06:00
  • f839a1293f Add a specialized copy command buffer to the vulkan swap chain Dr. Chat 2016-03-10 12:59:48 -06:00
  • 90b54bbaa6 Fix usage of mix in fragment shader sephiroth99 2016-03-10 00:47:22 -05:00
  • 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. Dr. Chat 2016-03-08 18:02:03 -06:00
  • 4e27539709 Fix Vulkan texture drawing. Dr. Chat 2016-03-08 17:57:04 -06:00
  • af7fc20c38 Beginnings of texture conversion/uploads Dr. Chat 2016-03-05 22:09:18 -06:00
  • 8ca9c6f6f4 Fix spirv-tools incorrect includes Dr. Chat 2016-03-03 20:11:23 -06:00
  • 38094ac819 Updated local clang-format. Dr. Chat 2016-03-02 21:16:38 -06:00
  • 740c70f270 Scalar logc, fix log Dr. Chat 2016-03-01 12:52:34 -06:00
  • 48cf270724 Use spv::NoPrecision instead of DecorationInvariant Set samplers/images as uniform constants Dr. Chat 2016-02-27 16:21:37 -06:00
  • c648e54539 Short-circuit draw calls if the render target's pitch is 0 Dr. Chat 2016-02-27 11:30:50 -06:00
  • 6109e0b03a Fix incorrect images/samplers definitions ps_param_gen and fix interpolators being copied incorrectly Dr. Chat 2016-02-25 17:41:41 -06:00
  • 652518ff59 Merge pull request #554 from DrChat/spv_translator Ben Vanik 2016-02-21 20:36:03 -08:00
  • 08a287d2ad Whoops Dr. Chat 2016-02-21 22:30:31 -06:00
  • 06d5a28615 Fix texture fetches Dr. Chat 2016-02-21 22:27:23 -06:00
  • 5e31c51a3d Textures are now in descriptor set 1. Ben Vanik 2016-02-21 20:03:51 -08:00
  • 3b20c757ff Merge branch 'vulkan' of github.com:benvanik/xenia into vulkan Ben Vanik 2016-02-21 19:56:30 -08:00
  • 62931f8c8e Adding texture setup and a dummy grid texture. Ben Vanik 2016-02-21 19:56:23 -08:00
  • 9e5eb06d07 Merge pull request #553 from DrChat/spv_translator Ben Vanik 2016-02-21 18:55:25 -08:00
  • 8a29330f8c First-pass image sampling Dr. Chat 2016-02-21 20:42:37 -06:00
  • 2785a94fea SetpXXPush Dr. Chat 2016-02-21 19:10:24 -06:00
  • 9030c87386 SetpPop/SetpRstr Dr. Chat 2016-02-21 18:52:49 -06:00
  • 5c2b5123ac Floors/Frcs/Truncs Dr. Chat 2016-02-21 18:15:11 -06:00
  • 0680e451bc Exp2 Dr. Chat 2016-02-21 17:59:59 -06:00
  • cbac9b2f4e Use vec4 zero rather than float zero where needed Dr. Chat 2016-02-21 17:39:18 -06:00
  • 13049912ee Vec Log Dr. Chat 2016-02-21 17:12:08 -06:00
  • 1d4190af02 MaxA Dr. Chat 2016-02-21 16:52:43 -06:00
  • 568845e81d Dp4 Dr. Chat 2016-02-21 16:47:06 -06:00
  • 3877afe90a MaxAsf Dr. Chat 2016-02-21 16:42:58 -06:00
  • d217f7b3c3 MaxAs/SetpClr Dr. Chat 2016-02-21 16:39:54 -06:00
  • fa3ca4a5d7 Short-circuit if the store has no writes. Dr. Chat 2016-02-21 16:30:57 -06:00
  • d2e3b5533d Whoops Dr. Chat 2016-02-21 16:29:12 -06:00
  • 9b805b929e Scalar kill ops Dr. Chat 2016-02-21 16:17:43 -06:00
  • e78537571f Vector kill ops Dr. Chat 2016-02-21 16:13:13 -06:00
  • 633746b5e4 Actually preserve pv/ps if predicate fails Dr. Chat 2016-02-21 15:38:10 -06:00
  • cda08ff826 Setup descriptor set for textures. Ben Vanik 2016-02-21 17:17:57 -08:00
  • 1def5bece9 Fix viewport inversion. Ben Vanik 2016-02-21 15:59:35 -08:00
  • ace895d4f3 Fixing 1/w0 correction. Ben Vanik 2016-02-21 15:44:09 -08:00
  • 24743bf676 Actually configure constant descriptor set. Ben Vanik 2016-02-21 15:20:35 -08:00
  • d57f974e2e Fix buffer alloc alignment and framebuffer comparison. Ben Vanik 2016-02-21 14:43:59 -08:00
  • 06ba273492 Warn and be ok with symbol services failing. Ben Vanik 2016-02-21 14:26:16 -08:00
  • 8bf5eba098 Capture exe with renderdoc and pass --vulkan_renderdoc_capture_all. Ben Vanik 2016-02-21 12:44:16 -08:00
  • fed6679b32 Merge pull request #552 from DrChat/spv_translator Ben Vanik 2016-02-21 11:21:29 -08:00
  • b83b9c28a1 Fix push constants declaration Dr. Chat 2016-02-21 13:19:08 -06:00
  • 983479adb5 Merge pull request #551 from DrChat/spv_translator Ben Vanik 2016-02-21 10:49:27 -08:00
  • a7880645be Merge branch 'vulkan' of github.com:benvanik/xenia into spv_translator Dr. Chat 2016-02-21 12:47:02 -06:00