Commit Graph

2640 Commits

Author SHA1 Message Date
baldurk cd9cfc5bfa Only set write pointer for type of descriptor we're writing 2016-02-07 18:50:57 +01:00
baldurk 9a3905272d Update to the final frozen 1.0 header 2016-02-07 18:50:57 +01:00
baldurk 79c863c21d Make sure to add ALL leftovers after main loop in FakeProfileMarkers 2016-02-07 18:50:56 +01:00
baldurk f2d31c6f76 Initialise depthFB/depthRP in case they aren't assigned (no depth buf) 2016-02-07 18:50:55 +01:00
baldurk 7b7d02c55c Fix a couple of cases where depth/stencil aspects could still be wrong 2016-02-07 18:50:54 +01:00
baldurk 7466b53e4b Enumerate device extensions on CreateDevice for debug logging
* Also works around a temporary loader bug
2016-02-07 18:50:53 +01:00
baldurk b86389d3ca Standardise on uint32_t for width/height storage, cast to int32_t 2016-02-07 18:50:52 +01:00
baldurk 0bdd186550 VS2015 warning fix (shadowed variable) 2016-02-07 18:50:51 +01:00
baldurk 5b375de3f1 Make sure instance gets wrapped/init'd even if vkCreateInstance fails 2016-02-07 18:50:50 +01:00
baldurk 29761041d7 Don't track depth and stencil aspects separately, treat them as combined 2016-02-07 18:50:49 +01:00
baldurk 378d3e9a47 When transitioning image subresources, set the range on each iteration 2016-02-07 18:50:49 +01:00
baldurk c81e407046 Set IMAGE_ASPECT_STENCIL correctly in barrier subresource ranges 2016-02-07 18:50:48 +01:00
baldurk 60c4542bf9 Update glslang to latest
* Based on renderdoc branch with local modifications from upstream:
  https://github.com/baldurk/glslang/tree/renderdoc
* hash 94b6c8a2c15e934aeec1f942124fd57b754ec252
2016-02-07 18:50:47 +01:00
baldurk ce1e11bd37 Gap needed for line break 2016-02-07 18:50:46 +01:00
baldurk 2e0ffa7813 Batch update copyright years everywhere 2016-02-07 18:50:45 +01:00
baldurk 0779ef2105 Update image layout transition assertions, but don't uncomment them yet 2016-02-07 18:50:42 +01:00
baldurk 8179d29f64 Add some access masks for layouts to keep validation layers happy 2016-02-07 18:50:41 +01:00
baldurk 2e84a50ee2 Implement clear before draw/before pass overlays for vulkan 2016-02-07 18:50:41 +01:00
baldurk 2ea17e0394 Fix some issues the validation layers found 2016-02-07 18:50:40 +01:00
baldurk 55d1ac930d Fix clear overlay replay loop I broke that was doing segment replays 2016-02-07 18:50:39 +01:00
baldurk 29abeb51d8 Tidy up VKTODOs a bit 2016-02-07 18:50:38 +01:00
baldurk 2b8c7cae64 Allow resource managers to serialise init state for deleted objects
* This is needed in Vulkan for the case where memory is freed during a
  frame, but it was USED during the frame, and the initial contents are
  needed for the data in the memory.
2016-02-07 18:50:37 +01:00
baldurk 96aaa889dc Better verbose dirty resource logging 2016-02-07 18:50:36 +01:00
baldurk 0c4a1af772 Update API support in README.md 2016-02-07 18:50:35 +01:00
baldurk 1efe8c2b69 Override some strings in the installer, particularly title and welcome
* On the welcome screen, make it much more clear if the version is
  already installed. If it's not installed, give a tiny summary of what
  RenderDoc actually is.
2016-02-07 18:50:34 +01:00
baldurk 768f7bbc76 Add super-fancy custom images/banners to the installers 2016-02-07 18:50:33 +01:00
baldurk d9a1bf4a0d Better handling of running an old installer with new version installed
* Better late than never? :)
2016-02-07 18:50:33 +01:00
baldurk b6a6773dca 32-bit compile fixes (sizes of structures) 2016-02-07 18:50:32 +01:00
baldurk 8616dbd8e1 Decode arguments for indirect draws/dispatches and display 2016-02-07 18:50:31 +01:00
baldurk 6578f451c1 Mark sure to frame-reference indirect argument buffers 2016-02-07 18:50:30 +01:00
baldurk bd829f07b0 Set draw usage for misc. usage in funcs like copy, blit, resolve, clear 2016-02-07 18:50:29 +01:00
baldurk c2546b566d Use SPIR-V offsets to decode UBO data instead of assuming packing layout 2016-02-07 18:50:28 +01:00
baldurk 82faf93a27 Fetch and store array stride with each constant block variable 2016-02-07 18:50:27 +01:00
baldurk a37f9d5242 Add proper image layout transitions for CmdClearColorImage
* Images must be in VK_IMAGE_LAYOUT_TRANSFER_DST_OPTIMAL
2016-02-07 18:50:26 +01:00
baldurk 078bd67bec Add a heavy weight global memory barrier around frame restart
* This is reaaaally conservative, but will avoid bugs.
2016-02-07 18:50:26 +01:00
baldurk 9fc96e398a Handle basePipelineIndex correctly (-1 means don't use it) 2016-02-07 18:50:25 +01:00
baldurk 73818e2f87 Explicitly NULL and ignore parts of descriptor writes that aren't used 2016-02-07 18:50:24 +01:00
baldurk 9eed8ff6be Add workaround for current sdk-0.10 loader 2016-02-07 18:50:23 +01:00
baldurk 397f313336 Never mark samplers as write referenced 2016-02-07 18:50:22 +01:00
baldurk f05b32afae Slightly improve automagic pass markers 2016-02-07 18:50:21 +01:00
baldurk b4237f900c Set readwrite/readonly parameters more accurately 2016-02-07 18:50:20 +01:00
baldurk 49a821a7b3 Handle disassembling arrays and unknown ops in parameter to vector shuf 2016-02-07 18:50:20 +01:00
baldurk 83c2ecd77c Check sampled on images before indirecting to the base type. 2016-02-07 18:50:19 +01:00
baldurk b80ea399a3 DbgCreateMsgCallback doesn't need wrapping
* When validation layers & RenderDoc play nicely together, then we can
  just create our own callback for serialising any debug messages.
2016-02-07 18:50:18 +01:00
baldurk 6efabefb43 Better handling of pipeline cache data
* On get we return valid but basically empty caches.
* We prevent any caches making it to the driver.
* Also our UUID is a bit more sane, it's "rdocTIMESTAMP" instead of
  just random numbers. Still not going to clash and still unique every
  run to prevent valid apps from trying to reuse a cache.
* This is better as VK_INCOMPLETE is actually the wrong error code to be
  returning.
2016-02-07 18:50:17 +01:00
baldurk c915f80675 Hopefully proper extension handling now for WSI extensions too 2016-02-07 18:50:16 +01:00
baldurk 3999dcdf73 Make sure device and queue are referenced as they're required on replay
* Helps with niche corner cases like empty frames with just a present.
  Without this, the queue isn't included and we get crashes on replay.
2016-02-07 18:50:15 +01:00
baldurk 2107b2fe55 Handle push/pop markers when inserting via queuesubmit
* This allows push/pop regions to cross command buffers, as long as they
  are submitted in the right order etc.
2016-02-07 18:50:14 +01:00
baldurk 69409f9ea4 Properly unwrap parameters to vkResetCommandPool 2016-02-07 18:50:13 +01:00
baldurk 5b2806f573 Add check for vulkan 2016-02-07 18:50:13 +01:00