Commit Graph

130 Commits

Author SHA1 Message Date
baldurk e0bbed0b34 Pass shader specialization data to pipeline state (just data, not in UI) 2016-02-07 18:49:22 +01:00
baldurk 4b7c33d531 Fixes for vulkan for BGRA changes, add R4G4 special format 2016-02-07 18:49:21 +01:00
baldurk a995ee66e2 Change handling of shaders and entry points so they're not aliased 2016-02-07 18:49:03 +01:00
baldurk 63d643d43c Replay functions compiling 2016-02-07 18:48:31 +01:00
baldurk 03d0bc9f88 get vk_info.cpp compiling 2016-02-07 18:48:27 +01:00
baldurk 4f784b07d5 Handle array outputs in SPIR-V, add array index to signature parameter 2016-02-07 18:47:36 +01:00
baldurk 6051f0c500 Split 'Resources' shader array into readonly/readwrite arrays
* This is preparation for a following commit, might not work on its own
  (mostly untested - just compiling).
2016-02-07 18:46:39 +01:00
baldurk ebb9f05c75 Pass through base mip/level for vulkan resources (also for GL textures) 2016-02-07 18:46:37 +01:00
baldurk a012652049 Handle arrays of objects in shaders 2016-02-07 18:46:32 +01:00
baldurk e6807ec3a7 Proper display for descriptor sets in pipeline state view 2016-02-07 18:46:29 +01:00
baldurk ba8114936e Render mesh displays as 4x MSAA to make the line rendering a bit nicer 2016-02-07 18:46:23 +01:00
baldurk 24bd8db521 Add a max count to SolidShadeMode enum 2016-02-07 18:46:04 +01:00
baldurk 4fe74824b1 Switch buffer offsets and lengths to 64-bit, downcast only where needed 2016-02-07 18:45:06 +01:00
baldurk 1d092f6b87 Remove some VKTODOs that are judged not relevant anymore 2016-02-07 18:44:54 +01:00
baldurk ed70b4b58e Remove VKTODO - image layout no longer part of framebuffer attachment 2016-02-07 18:44:36 +01:00
baldurk 70b1d241b0 Finish the vulkan pipeline display 2016-02-07 18:43:49 +01:00
baldurk 6a208e608c Add vulkan pipeline state to replay proxy serialising 2016-02-07 18:43:42 +01:00
baldurk a214e9bdec Remove dynamic state objects 2016-02-07 18:42:43 +01:00
baldurk a25d07cf59 Display cbuffer contents within vulkan pipe viewer
* For now, we just assume that cbuffers are tightly packed according to
  D3D11 rules (matrices, structs, float3/4 are all float4 aligned), and
  once final SPIR-V is generated everything should have explicit
  offsets, strides, and sizes
2016-02-07 18:42:06 +01:00
baldurk edac1f0bfd Pass vulkan pipeline state along to UI 2016-02-07 18:41:29 +01:00
baldurk eb66032a49 Fetch image for attachment view, use in 'fake' d3d11 pipe state 2016-02-07 18:41:25 +01:00
baldurk 96e19cc4e9 List out descriptor set bindings and contents in vulkan pipeline state 2016-02-07 18:39:34 +01:00
baldurk 6f9ec675a9 Add MakeResourceFormat for VkFormat 2016-02-07 18:39:02 +01:00
baldurk a14fdb04aa Make vulkan pipeline state available for replay
* ResourceFormat is still TODO
2016-02-07 18:39:01 +01:00
baldurk 32c43726c0 Rename some variables to clarify them 2016-02-07 18:38:59 +01:00
baldurk 1e175fd858 Store coarse objects in VulkanPipelineState 2016-02-07 18:38:58 +01:00
baldurk d9d90097ad Start tracking current state 2016-02-07 18:38:47 +01:00
baldurk 8b7a025853 Refactor BGRA formats to not be special (so allow any BGRA format)
* Also add ASTC and D16S8 types while in the neighbourhood
2015-11-29 22:05:26 +01:00
baldurk c8a6d0dbb7 If displaying via a custom shader when saving texture, save that output 2015-11-18 22:30:47 +01:00
baldurk 73ad61d38e When saving textures if only one channel is visible, save as greyscale 2015-11-18 22:30:47 +01:00
baldurk 26b2901931 Bugfix for viewports on C++ side not matching C# structure 2015-10-26 18:04:07 +01:00
baldurk 57ba6e0806 Add overlays to clear before current draw/pass. Refs #164
* Depth is not cleared, only colour buffers.
* This uses the same definition of pass as the quad overdraw overlay,
  which isn't quite the same as the auto-grouping passes (which allow
  for varying colour binds being grouped together). It only counts up
  to the last draw where the outputs were different.
2015-10-25 15:49:16 +01:00
baldurk c7cfdcc689 Add basic support for displaying/picking S8 textures. Refs #165 2015-10-25 14:09:43 +01:00
baldurk e2871e1245 Add typedef for old binary compatible versions to avoid annoying people 2015-09-30 22:18:06 +02:00
baldurk 59e604be91 Bump in-application API to 1.0.1. Backwards ABI compatible with 1.0.0 2015-09-30 22:14:38 +02:00
baldurk 455797f93e Change dllexport'd RENDERDOC_GetAPI to a function pointer typedef
* Apps don't link against renderdoc so a dllexport is meaningless, they
  need a typedef to declare the function pointer they will
  GetProcAddress().
2015-08-27 17:57:18 +02:00
baldurk 4609fa710b Update RenderDoc application-facing API to a stable/mature version.
* This API is now intended to be forward and backward compatible as much
  as possible. Meaning applications should be able to run without
  changing on many RenderDoc versions after the one they are built
  against without breaking.
* All function pointers are fetched at once in one versioned GetAPI()
  function, to save on constant GetProcAddress/dlsym'ing.
* Otherwise, it's largely similar to the previous API.
2015-08-23 15:12:05 +02:00
baldurk 6a2344d9d8 Show correct inputs/outputs for copy and dispatch calls. Refs #147
* Next step is to display VS and other stage inputs on the input panel.
* Also need to tidy up the fetching of highest mip/array slice etc to
  use the same codepath.
2015-08-23 13:20:23 +02:00
baldurk 9333228fc5 Highlight empty viewports that are still enabled in the UI. Refs #144 2015-08-23 11:49:00 +02:00
baldurk 296d7e39b1 Handle glTextureBufferRangeEXT not being available
* This way we don't have to require GL_ARB_texture_buffer_range as well
  when technically it should only be needed if the application used it.
2015-07-23 23:06:25 +02:00
baldurk 8213281921 Fix up fetching layer/mip for FBOs on replay 2015-07-18 18:27:34 +02:00
baldurk 5678ea7b29 Fix pixel history getting confused if some (not all) fragments discard 2015-07-16 22:17:06 +02:00
baldurk 0933d96fc9 Add FileChanged notification, use to reload data in image viewer
* Things will get weird if the image changes drastically like in format
  or dimension.
2015-07-15 22:06:33 +02:00
baldurk 4a401460d3 Fetch layer and mip level for FBO attachments 2015-07-13 00:05:42 +02:00
baldurk 1f5c8a450a linux compile fixes 2015-07-10 18:08:24 +02:00
baldurk af5c40cf7b Need to allocate memory via callback to renderdoc.dll as well as freeing
* This whole interface really needs a tidy-up at some point, but for now
  this is enough.
2015-07-10 16:38:39 +02:00
baldurk d7c4c0be7d Give counter result union a name 2015-07-10 16:38:38 +02:00
baldurk 47d509749b Fix for upstream changes 2015-07-10 16:38:37 +02:00
baldurk ea4350f52f Expose C++ interface via API headers, for C++ UI
* Since the exported C functions just take an explicit 'this' parameter
  and call the corresponding function, we can just make it contractual
  via a virtual interface that the pointer can be dereferenced.
2015-07-10 16:38:27 +02:00
baldurk 2d9ca94316 Fix some clang warnings with constructor initialise order 2015-07-10 16:38:26 +02:00