baldurk
c8bba412d2
Move SPVModule into header and fill out ShaderReflection from SPIR-V
2016-02-07 18:41:44 +01:00
baldurk
a201d5a91b
Add basic support for texture sampling
2016-02-07 18:41:43 +01:00
baldurk
a2aa479c22
print source language and extensions
2016-02-07 18:41:42 +01:00
baldurk
0d0e13a0f9
Disassemble OpCompositeInsert, merge load-hit-stores with OpStore
2016-02-07 18:41:41 +01:00
baldurk
c6a9a5e1e6
For now, take away Load() and Store() text, and inline scalar constants
2016-02-07 18:41:41 +01:00
baldurk
6642685069
Add brackets around nested math operations for precedence clarity
2016-02-07 18:41:40 +01:00
baldurk
2a230ecc00
Add OpCompositeExtract disassembly
2016-02-07 18:41:39 +01:00
baldurk
66ddf12ca6
Print decorations with variable declarations
2016-02-07 18:41:38 +01:00
baldurk
bae0141090
Change SPIR-V disassembly to handle unrecognised ops without crashing
...
* For the moment, this means some opcode we haven't implemented yet, but
in future it could be opcodes from an extension or entirely custom
opcodes.
2016-02-07 18:41:37 +01:00
baldurk
410ada541a
Pass vulkan shader modules into DisassembleSPIRV
2016-02-07 18:41:36 +01:00
baldurk
1ae521823c
Only print unimplemented messages once each, instead of spamming
2016-02-07 18:41:35 +01:00
baldurk
8eddd387d7
Add vulkan pipeline state viewer based on D3D11 viewer
2016-02-07 18:41:35 +01:00
baldurk
7aaaa99d84
Win32 compile fix
2016-02-07 18:41:34 +01:00
baldurk
0ba78bdc18
Implement GetBufferData for checking mesh data
2016-02-07 18:41:33 +01:00
baldurk
c8ebfb0efd
Remove thumbnails again - they seem buggy
2016-02-07 18:41:32 +01:00
baldurk
245b4cca92
Fix incorrect comparison
2016-02-07 18:41:31 +01:00
baldurk
4e113a08c7
Hack out handling of vulkan pipeline type in texture viewer
2016-02-07 18:41:30 +01:00
baldurk
edac1f0bfd
Pass vulkan pipeline state along to UI
2016-02-07 18:41:29 +01:00
baldurk
4ed49079d1
Re-enable thumbnails and pixel context, as multiple swap chains work now
2016-02-07 18:41:29 +01:00
baldurk
389894d4be
Force-flushed persistent maps should be serialised before queue submit
2016-02-07 18:41:28 +01:00
baldurk
e3ca8d0773
For now, handle persistent maps during capture by forcing flush
...
* This is ugly and will change once maps are properly intercepted, but
works for now.
2016-02-07 18:41:27 +01:00
baldurk
5911749596
Update local descriptor set tracking when replaying vkUpdateDescSets
2016-02-07 18:41:26 +01:00
baldurk
eb66032a49
Fetch image for attachment view, use in 'fake' d3d11 pipe state
2016-02-07 18:41:25 +01:00
baldurk
f43051a1ca
Make QRenderDoc main window a bit bigger by default
2016-02-07 18:41:24 +01:00
baldurk
da62c0a87f
Fix comparisons against swapbuffer ID to be consistently using orig IDs
2016-02-07 18:41:23 +01:00
baldurk
f569770f48
Return a bit better textures list
2016-02-07 18:41:23 +01:00
baldurk
78cc3acce7
Fix command buffer event ID numbering
2016-02-07 18:41:22 +01:00
baldurk
f76d89cdbd
Windows compile fix (super hack)
2016-02-07 18:41:21 +01:00
baldurk
db74a097dd
Remove hardcoded display of backbuffer, instead display specified tex
...
* Currently will only work for 2D textures though
2016-02-07 18:41:20 +01:00
baldurk
26d99bf7bb
Handle stale & unreferenced resource handles in descriptor sets
...
* It's possible to replay with descriptor set slots (and updates)
referring to resources that don't exist at replay time, if those sets
are never actually used in a queue that's submitted and the resource
isn't referenced otherwise. For this reason we need to be able to
skip initial contents or descriptor updates that refer to these
unused resources.
2016-02-07 18:41:19 +01:00
baldurk
12fc8e9935
Implement some query pool functions
2016-02-07 18:41:18 +01:00
baldurk
9ebb7cec1f
Implement CmdResolveImage
2016-02-07 18:41:17 +01:00
baldurk
84415a3f76
Disable hooking libGL for now on linux
2016-02-07 18:41:16 +01:00
baldurk
d763b9ef43
Pipeline layout should take a parent reference on the layouts used
2016-02-07 18:41:16 +01:00
baldurk
ca3c283528
Fix event counting edge-case for empty command buffers
2016-02-07 18:41:15 +01:00
baldurk
118bc91ec0
Disable assertion of valid transitions
...
* This is going to be difficult to debug and verify without the layer
to debug and verify that all transitions are correct (both on the app
side and renderdoc's replay side). For now, disable the assert and
just hope that the app got it right and we replay it right.
2016-02-07 18:41:14 +01:00
baldurk
840bfe7096
Add hackish but better handling of device memory initial states
...
* Device memory is always treated as dirty from creation. This means
we will always prepare_initialstate for all memory.
* We no longer force initial states for all memory.
* Instead we iterate over all frame ref'd objects, and then ref their
memory records - for framebuffers and view objects, we frame ref their
parents so that they can in turn frame ref their memory record.
* In future this should be built up at creation time and just iterated
whenever we want to ref any of these objects (all the way down to mem)
2016-02-07 18:41:13 +01:00
baldurk
6a3b0946eb
Image initial states need special handling, but for now don't error
...
* Any non-linear images need to be copied into a linear image for
readback. Otherwise the device memory will not necessarily be in the
right format for replay.
2016-02-07 18:41:12 +01:00
baldurk
eb18687fb2
Don't dirty buffers, and don't create any init state for them
...
* Buffers have no state, they're immutable, and contents are handled by
device memory initial state
2016-02-07 18:41:11 +01:00
baldurk
c6fd6e80f2
Remove 'capture X frame' hack, as keyboard input is working
2016-02-07 18:41:11 +01:00
baldurk
af09dbb648
Switch keyboard handling to xcb (WIP, needs to be cleaned before merge)
2016-02-07 18:41:10 +01:00
baldurk
38a34db5ca
Don't assert pNext == NULL, some apps seem to pass (invalid?) structs
2016-02-07 18:41:09 +01:00
baldurk
6188720537
print chunk sizes
2016-02-07 18:41:08 +01:00
baldurk
ddaf962dde
Serialise multiple flushes, not just the first
...
* typo - copied from unmap condition where we don't serialise anything
on unmap if there was a flush
2016-02-07 18:41:07 +01:00
baldurk
857f20d164
Mark memory records as dirty (for now - buffers shouldn't dirty at all)
2016-02-07 18:41:06 +01:00
baldurk
ac764b4170
Don't try and use wrapped image from transition on replay
2016-02-07 18:41:06 +01:00
baldurk
402819b5c7
Use original ID when returning pipeline state to replay
2016-02-07 18:41:05 +01:00
baldurk
3a8e6a9557
Don't refuse to bail out if a command buffer is in progress anymore
2016-02-07 18:41:04 +01:00
baldurk
fe414dfc9c
Only reset debug text on indent level 0
2016-02-07 18:41:03 +01:00
baldurk
34da5158cf
Rename "Command Buffer Start" to "Render Pass Start"
2016-02-07 18:41:02 +01:00