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
baldurk
2ccc98a73c
AddDrawcall for a few draw type functions
2016-02-07 18:41:01 +01:00
baldurk
aec46fad49
Give virtual command buffer submit event a good name
2016-02-07 18:41:00 +01:00
baldurk
4b5a55aaa9
fix using eventCount to fetch current EID
2016-02-07 18:41:00 +01:00
baldurk
37afa05847
Mark fence used for queue submission as read
2016-02-07 18:40:59 +01:00
baldurk
a71c929538
Fix fetching IDs for recording transitions
2016-02-07 18:40:58 +01:00
baldurk
5525a767a6
Don't forcibly disjoint all cmd buffers and sort to the start
...
* I misunderstood how descriptor sets were used - they are allowed to be
dereferenced anywhere between cmd buffer record time and when
execution finishes. I thought they were only ever dereferenced during
exec. So it means we must preserve cmd buffer ordering vs. queue
submit and descriptor update. We still want to force cmd buffers into
the start of the frame that were recorded pre-frame though.
2016-02-07 18:40:57 +01:00
baldurk
c76466626c
Do something about initial state for un-written descriptor sets
2016-02-07 18:40:56 +01:00
baldurk
ac3ec846a8
Ignore any serialised images states for images that aren't in replay
2016-02-07 18:40:55 +01:00
baldurk
60c206d4e1
Remove some overzealous unwrapping
2016-02-07 18:40:55 +01:00
baldurk
4c070023dc
Framebuffers should depend on the renderpass
2016-02-07 18:40:54 +01:00
baldurk
b6c7a406c1
Add first-pass implementation of vkFlushMappedMemoryRanges
...
* Assuming that if we hit a flush, then on unmap we don't need to
serialise everything. This assumption might not hold in general
2016-02-07 18:40:53 +01:00
baldurk
2cfa89ee18
Don't delete cmd buffer records until we've flushed to disk
2016-02-07 18:40:52 +01:00
baldurk
611905894e
Add fence functions and a FlushMappedMemory that just prints for now
2016-02-07 18:40:51 +01:00
baldurk
45fc32614a
Remove pipeline cache as it is optional and causes duplicate wrappers
...
* The same ICD in the SDK just returns '1' as the handle for all caches.
* This could be valid behaviour (not for caches but for other objects)
so need to check where this could happen and handle it. We already do
for queues, physical devices, and a couple of others.
2016-02-07 18:40:50 +01:00
baldurk
38b2158c7b
Simplify linux include paths to just depend on $VULKAN_SDK
2016-02-07 18:40:49 +01:00
baldurk
cb9d65b7c8
Add LoaderAndTools patch to work with wrapped objects
2016-02-07 18:40:49 +01:00
baldurk
0b4a34a442
Swap 'real' object for a <type,obj> pair, to avoid duplicate handles
...
* If an implementation returns 1 as a handle for both an image and
buffer we must be able to differentiate and not clash the wrappers.
2016-02-07 18:40:48 +01:00
baldurk
1f4a368de7
Rename trace layer exported functions to avoid ambiguity
...
* I ran into a problem where &vkGetInstanceProcAddr etc were returning
the loader functions and inducing an infinite loop. I'm not sure it's
defined which is returned, since librenderdoc.so also links against
the loader for replay, so instead we take advantage of being able to
define RenderDocGetInstanceProcAddr and have that loaded up by the
loader.
2016-02-07 18:40:47 +01:00
baldurk
1f16739ee4
Change VK_LAYER_DIRS environment varibale to VK_LAYER_PATH
2016-02-07 18:40:46 +01:00
baldurk
d2e4db052c
Remove requirements for dma and maybe compute on device queues
...
* Compute will be needed later, DMA not at all (as a hard requirement).
2016-02-07 18:40:45 +01:00
baldurk
66934cd875
Add clean step for vulkan driver
2016-02-07 18:40:44 +01:00
baldurk
20f4b4b7fb
Include version.h from tracelayer to get version numbers
2016-02-07 18:40:44 +01:00
baldurk
e211e25b9a
Don't define VK_PROTOTYPES, we fetch all functions via dispatch or GPA
2016-02-07 18:40:43 +01:00
baldurk
26b8ff197b
Split out vk_core.cpp into a few files for (mildly) better organisation
...
* No changes to any of the functions in this - purely re-organisation
and moving of code.
2016-02-07 18:40:42 +01:00
baldurk
0154a8bd21
Copy renderdoc.json to output folder, unify layer name/description
2016-02-07 18:40:41 +01:00
baldurk
940b89cd73
Move capture layer into librenderdoc.so on linux
2016-02-07 18:40:40 +01:00
baldurk
08ff1b40cb
Move dispatch table handling internal, remove LoaderAndTools code
2016-02-07 18:40:39 +01:00
baldurk
19de6b1d16
Rename rdtrace.cpp -> vk_tracelayer.cpp, remove vk_hooks_*.cpp
2016-02-07 18:40:38 +01:00
baldurk
99071776e6
Move layer dispatch table stuff to vk_common.h
2016-02-07 18:40:38 +01:00
baldurk
81b7cf3b85
Fix shutdown/release process
2016-02-07 18:40:37 +01:00
baldurk
23ffd5df1b
Command buffers should go through ReleaseWrappedResource
2016-02-07 18:40:36 +01:00
baldurk
89c4676f9c
Get wrapper from info structure unwrapped resource
2016-02-07 18:40:35 +01:00
baldurk
7486dcf4fe
Use correct object for dispatching
2016-02-07 18:40:34 +01:00
baldurk
b951c37fcf
Wrap the fake backbuffer image view
2016-02-07 18:40:33 +01:00
baldurk
879dd422b5
Change descriptor set order back
2016-02-07 18:40:33 +01:00
baldurk
9bef542fc6
Fix typo - force initial states for real device memory
2016-02-07 18:40:32 +01:00
baldurk
b4c00d9a7c
Destroy instance through correct dispatch table
2016-02-07 18:40:31 +01:00
baldurk
98bfdd82db
Fix in-application text rendering
2016-02-07 18:40:30 +01:00
baldurk
6a904ba032
Add a rather gross hack to get replay queues in advance and wrap later
2016-02-07 18:40:29 +01:00
baldurk
4db95cfe0c
Add some missing wrap/unwraps
2016-02-07 18:40:28 +01:00