Commit Graph

1873 Commits

Author SHA1 Message Date
baldurk b14b149394 Dynamically allocate physical device array 2016-02-07 18:39:39 +01:00
baldurk 6d4cadf697 Remove VKTODOs about pNext/sType, it's handled in struct serialises 2016-02-07 18:39:38 +01:00
baldurk 1c0c09f4b9 Make sure to call vkResetCommandBuffer before re-begin'ing 2016-02-07 18:39:37 +01:00
baldurk e5e8fa29f5 Fix problem that might go away with resource record shutdown order 2016-02-07 18:39:36 +01:00
baldurk 3b3053369c Add frame references for current descriptor set bindings on queue submit
* We rely on the API-enforced lifetimes to be followed by the user,
  which means all resources they care about (note, might be some stale
  bindings) will be alive at queue submission time so we can just ref
  them all.
2016-02-07 18:39:35 +01:00
baldurk a675735499 Correctly query for backbuffer format and present mode from driver 2016-02-07 18:39:35 +01:00
baldurk 96e19cc4e9 List out descriptor set bindings and contents in vulkan pipeline state 2016-02-07 18:39:34 +01:00
baldurk 426aeb5a5e Keep track of current descriptor set bindings on replay 2016-02-07 18:39:33 +01:00
baldurk 26f773684a Track enough while READING to set drawcall topology/index width 2016-02-07 18:39:32 +01:00
baldurk 2eb87b804f Giant hack to set up 'fake' device/instance dispatch tables, for replay 2016-02-07 18:39:31 +01:00
baldurk 9b0b6ef3b6 Get compiling on win32 (hacks, not final code). 2016-02-07 18:39:30 +01:00
GregF 5c8df903ef Revert "Use layer specific dispatch table maps"
This reverts commit b445ecdaa2a7ae26b468439dbb0b79ad5f1fb78f.
2016-02-07 18:39:29 +01:00
GregF a8dfd36525 Use layer specific dispatch table maps 2016-02-07 18:39:28 +01:00
GregF e3f4a122fc Fixes to enable capture of cube with layer mechanism. 2016-02-07 18:39:28 +01:00
GregF 872a312af0 Use Vulkan layer to generate trace file 2016-02-07 18:39:27 +01:00
baldurk 45d7b488d4 Typo fix - set handle to handle 2016-02-07 18:39:26 +01:00
baldurk 0bc36096f8 Track descriptor set updates and serialise out as initial states 2016-02-07 18:39:25 +01:00
baldurk ad687ae955 Pre-declare serialise of VkDescriptorInfo so it can be used elsewhere 2016-02-07 18:39:24 +01:00
baldurk 55ceffcdd2 In SerialiseObject explicitly handle VK_NULL_HANDLE 2016-02-07 18:39:23 +01:00
baldurk 8861110934 debug markers should be captured always when writing 2016-02-07 18:39:22 +01:00
baldurk c2623a55be Track descriptor set bindings as they are updated, don't record chunks 2016-02-07 18:39:21 +01:00
baldurk ab0bbf85a5 Store image type in image info 2016-02-07 18:39:21 +01:00
baldurk 0554c2779f Move platform-specific codepaths out into separate files 2016-02-07 18:39:20 +01:00
baldurk 53244eab7b Destroy output windows and all associated objects properly 2016-02-07 18:39:19 +01:00
baldurk e7a396b69c we need #includes to organise uniforms 2016-02-07 18:39:18 +01:00
baldurk 33eda64c8a Multiple maps don't happen 2016-02-07 18:39:17 +01:00
baldurk 8cec8cdd6a Consistently use VkResult vkr (res as a name is ambiguous) 2016-02-07 18:39:16 +01:00
baldurk 14e913ddeb Enable blending where needed for texture display 2016-02-07 18:39:15 +01:00
baldurk 1bb1168dae Change debug backbuffer clear from magenta to black 2016-02-07 18:39:15 +01:00
baldurk 0382a1bdce Move command buffer start drawcall to renderpass begin 2016-02-07 18:39:14 +01:00
baldurk 5db6e13505 Render output windows to off-screen backbuffer always, then copy in flip 2016-02-07 18:39:13 +01:00
baldurk c02d01c0b2 Check against special format, not is-special bool 2016-02-07 18:39:12 +01:00
baldurk 03a50d805e Use fake backbuffer format for image view 2016-02-07 18:39:11 +01:00
baldurk 85defbeeeb Linux compile fixes 2016-02-07 18:39:10 +01:00
baldurk ee6caa25c9 Implement window clearing (or checkerboard) showing up properly 2016-02-07 18:39:10 +01:00
baldurk 9853c73600 Try to properly calculate needed memory type index 2016-02-07 18:39:09 +01:00
baldurk 77a48f6d07 Return backbuffer format and use it to switch BGRA/RGBA where needed 2016-02-07 18:39:08 +01:00
baldurk 98fa972265 Just use swapchain image format directly 2016-02-07 18:39:07 +01:00
baldurk e97a259ac9 Proper texture display via shader & draw 2016-02-07 18:39:06 +01:00
baldurk e2cf3e7455 A number of tidyups to states and objects for proper checkerboard draw
* Create dynamic viewport state per output win
* Split tex display and checkerboard rendering into separate states.
* Abstract out UBO create/destroy/(un)map
2016-02-07 18:39:05 +01:00
baldurk 1fff507bd3 Add checkerboard files to vcxproj 2016-02-07 18:39:04 +01:00
baldurk 9e43d99ccf Start doing proper draws instead of image copies, for now checkerboard 2016-02-07 18:39:04 +01:00
baldurk 2b67894bdb Temporarily disable thumbnails and pixel context
* just until multiple swapchains is working
2016-02-07 18:39:03 +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 b3164943a5 Add a struct that stores all the creation info for objects for later use 2016-02-07 18:39:00 +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 aed0d23ca6 Handle render pass properties in state vector 2016-02-07 18:38:58 +01:00
baldurk cd4f180e61 Free buffer created for pixel picking 2016-02-07 18:38:57 +01:00