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
baldurk
e22d62dabd
Add formatting of complex buffers when opening viewer
2016-02-07 18:50:12 +01:00
baldurk
a41104bbd0
Display/report compute resources correctly
2016-02-07 18:50:11 +01:00
baldurk
d98a9ef4ae
SPIR-V should fill out read only and read write resources separately
2016-02-07 18:50:10 +01:00
baldurk
85858da14d
Use the right slot number for opening constant buffers
2016-02-07 18:50:09 +01:00
baldurk
8e089a8768
Mark dispatches as drawcalls and fixes for CS pipeline state
2016-02-07 18:50:08 +01:00
baldurk
f93f5c8d89
Disassemble SSBOs separately from UBOs in SPIR-V
2016-02-07 18:50:07 +01:00
baldurk
a06bd1de5e
Fix for not replaying individual dispatch properly.
2016-02-07 18:50:06 +01:00
baldurk
6959d45d44
Tweak resource usage menu to group things a little more aggressively
2016-02-07 18:50:06 +01:00
baldurk
c8436d3646
Implement resource usage tracking
2016-02-07 18:50:05 +01:00
baldurk
c746957fb2
linux compile fixes
2016-02-07 18:50:04 +01:00
baldurk
55f866bfd5
Add hook skip checks for AMD's and Intel's dlls
...
* Although it's not been a problem until now like NV's, best to be safe
rather than sorry!
2016-02-07 18:50:03 +01:00
baldurk
43c9782d44
Delete unused variable
2016-02-07 18:50:02 +01:00
baldurk
8eac6d9265
Remove rule for .spvo in Makefile that isn't used anymore
2016-02-07 18:50:01 +01:00
baldurk
19e30f3bdc
Update json name to linux Makefile-generated json file
2016-02-07 18:50:00 +01:00
baldurk
de082c5c9f
Update build scripts and distribution to package json and layer regkey
2016-02-07 18:50:00 +01:00
baldurk
258e08f740
Add a UI to prompt the user to install the vulkan implicit layer
...
* I don't like the fact that it doesn't "just work" but this is mostly
limited by design decisions on the side of the vulkan loader.
* There is no good way with the loader to say 'please also include this
layer in the enumerated lists'. There is an all-or-nothing override of
layer searching, but that would break any layers the application might
actually rely on.
* On balance I've decided to go with this method, as it's a one-off
interruption for the user (unless someone is constantly switching
between installs).
2016-02-07 18:49:59 +01:00
baldurk
514967ccd2
Win32 compile fixes (and some replay proxy fixups)
2016-02-07 18:49:58 +01:00
baldurk
9ac8c365ee
Refactor env var handling, to handle layer as implicit
2016-02-07 18:49:57 +01:00
baldurk
1398b9fb56
Rejig extension handling and implement VK_LUNARG_DEBUG_MARKER support
...
* The WSI extensions should probably route through this method too
2016-02-07 18:49:56 +01:00
baldurk
52afa614c8
No longer true I think
2016-02-07 18:49:55 +01:00
baldurk
31502b0186
Drawcall timings now mostly supported
2016-02-07 18:49:54 +01:00
baldurk
e1a37d4616
Reorganise hierarchy so that vkQueueSubmit is just labels
...
* Rather than explicitly having vkQueueSubmit as a node with command
buffer children, and those with the contents, we now inline everything
and just add labels at beginning and end.
* Also tweaked slightly the fake pass algorithm to handle labels being
present and merging a bit more aggressively to merge adjacent command
buffers that are doing the same pass.
2016-02-07 18:49:53 +01:00
baldurk
24f9f487c2
Track state during reading on per-cmd buffer basis
...
* The command buffer chunks can be interleaved so we can't track just
using the one render state.
2016-02-07 18:49:52 +01:00
baldurk
ee175febb8
Add initialisers for a couple of missing things in pipeline state
2016-02-07 18:49:52 +01:00
baldurk
b4fb266af9
Generate linux json from windows json, to avoid having two files
...
* The linux json file has a different name but this isn't important.
Currently I'm not sure how the json/lib will be placed (will it be
installed somewhere and the json point at /opt/renderdoc/ or what?)
2016-02-07 18:49:51 +01:00
baldurk
bb2394183c
Add ability to re-record all cmd buffers (for whole-frame timing)
2016-02-07 18:49:50 +01:00
baldurk
8134642812
Let drawcall callbacks specify that all cmd buffers should be re-done
2016-02-07 18:49:49 +01:00
baldurk
4814c58ab8
Rename *Partial* funcs to Rerecord, as it won't be just partial
...
* When doing a full-frame counter record, we will rerecord every command
buffer.
2016-02-07 18:49:48 +01:00
baldurk
251a9773c2
remove min/max event IDs from FetchCounters - always times whole frame
2016-02-07 18:49:47 +01:00
baldurk
8cf39364f5
Set outputs/depthOut values in FetchDrawcalls
2016-02-07 18:49:46 +01:00
baldurk
0a4957320d
Implement GPU counters via timestamp query pools
2016-02-07 18:49:45 +01:00
baldurk
b024786cc2
When doing a partial replay of a subsection, explicitly jump to each EID
...
* The reason being that the actual recorded events are interleaved with
others (either on the queue or the cmd buffer), so we have to skip
over those. The events are duplicated where they are inserted by EID
and refer to the original offsets.
2016-02-07 18:49:44 +01:00
baldurk
4d7f7fe357
Don't disable depth/stencil tests, only writes
2016-02-07 18:49:43 +01:00
baldurk
794065eedb
Crash fix
2016-02-07 18:49:43 +01:00
baldurk
db22eb64fb
Implement quad overdraw display modes (not quite 100% yet)
2016-02-07 18:49:42 +01:00
baldurk
d8f8a97c9e
Don't do single draw via ReplayLog if we're doing it directly
2016-02-07 18:49:41 +01:00
baldurk
00e0946112
Support initing postvs for a whole pass via a per-draw callback
2016-02-07 18:49:40 +01:00
baldurk
7aca368cc7
Fix resourceformat check (was 'working' before because null != null)
2016-02-07 18:49:39 +01:00
baldurk
ca6eee8b8f
Remove start event ID from replaylog call.
...
* Any uses of this for replaying subsections of the frame are to be
implemented under the replay driver level, as it's too onerous to
require that the replay driver be able to replay arbitrary subsections
or to communicate granularity up to the above layer.
2016-02-07 18:49:38 +01:00
baldurk
e05614c6bf
Set up drawcall previous/next/parent IDs in replay drivers
2016-02-07 18:49:37 +01:00
baldurk
459196fd21
Shift responsibility for 'whole pass' type processing to replay drivers
...
* Note, currently broken as the drivers don't have previous/next EIDs
set up on their drawcalls
2016-02-07 18:49:36 +01:00
baldurk
b2bbe4541a
Length in vkCmdPushConstants is in byte units (but multiple of 4)
2016-02-07 18:49:35 +01:00
baldurk
b3029b6ddf
Changed command buffers to be handled properly as pooled objects
2016-02-07 18:49:34 +01:00
baldurk
290b695a6b
Linux compile fixes
2016-02-07 18:49:33 +01:00
baldurk
a3bf43c852
Tweak cell header merging in buffer viewer to merge all columns
...
* There's some kind of flickering/lag that goes on when you horizontally
scroll but it's minor and I can't figure out how to fix it for now.
2016-02-07 18:49:32 +01:00