Commit Graph

2145 Commits

Author SHA1 Message Date
baldurk 4336722e34 Tidy up FetchTexture data for vulkan, fill out all fields properly 2016-02-07 18:43:35 +01:00
baldurk 313f53a820 Remove stored fake backbuffer data, display backbuffer on present calls 2016-02-07 18:43:34 +01:00
baldurk 19a13eefee Allow multiple frame capture 2016-02-07 18:43:33 +01:00
baldurk e841bd9969 Implement proper pixel picking via RenderTexture & F32 readback 2016-02-07 18:43:32 +01:00
baldurk 4ebbf09364 Get replay to display textures in gamma-correct fashion 2016-02-07 18:43:31 +01:00
baldurk 64be44bf8b Fix mip display of textures 2016-02-07 18:43:30 +01:00
baldurk feec902280 Implement remaining API functions
* Some functions, particularly synchronisation related event/fence
  functions, are mostly untested and likely don't work yet.
2016-02-07 18:43:29 +01:00
baldurk b3d06da6a0 Implement more Cmd functions. CmdExecuteCommands is stubbed out 2016-02-07 18:43:28 +01:00
baldurk f6b6104977 Implement a few more API entry points, some are stubbed out 2016-02-07 18:43:28 +01:00
baldurk 5e624d0f58 Add current release notes 2016-02-07 18:43:27 +01:00
baldurk 9cc52ebc7e Windows compile fix - header declare Deserialise template functions
* MSVC generates multiply defined symbols otherwise.
2016-02-07 18:43:26 +01:00
baldurk 2b5fe533e7 Remove VKTODO for Deserialise - completed by @greg-lunarg 2016-02-07 18:43:25 +01:00
GregF 38ebce536e Finish move to Deserialise function; remove Deserialise class 2016-02-07 18:43:24 +01:00
GregF c3553d26a9 Create Deserialize function to eventually replace Deserialise class 2016-02-07 18:43:23 +01:00
GregF 7cab194395 add Deserialise code for latest vulkan header/sdk 2016-02-07 18:43:22 +01:00
GregF 494af5a9f4 Add Deserialise support for object created with SerialiseBuffer. 2016-02-07 18:43:21 +01:00
GregF cf1b3a2aa5 Add Deserialise support for objects created with SerialisePODArray. 2016-02-07 18:43:20 +01:00
GregF ad77fc2c5d fix vulkan header name changes from cherry-pick. 2016-02-07 18:43:20 +01:00
GregF d1a80c6657 Add Deserialise support for all objects created with SerialiseComplexArray
and SerialiseOptionalObject.
2016-02-07 18:43:19 +01:00
GregF 17fb1deb84 Add Deserialise for VkDescriptorSetLayoutCreateInfo. 2016-02-07 18:43:18 +01:00
GregF 33ca020012 Add Deserialise class to deallocate nested Vulkan structs
Currently deallocating VkDeviceCreateInfo and VkPipelineLayoutCreateInfo.
Still more to be done.
2016-02-07 18:43:17 +01:00
baldurk 8b7744e71c Handle descriptor pools deleting their children implicitly on destroy 2016-02-07 18:43:16 +01:00
baldurk b28428cdf1 Don't try and index into a descriptor set or binding that doesn't exist
* This can happen with unused binds - I think it's valid for a bind in a
  shader to index outside of the descriptor set as long as it's never
  used.
2016-02-07 18:43:15 +01:00
baldurk 2b9c3118a5 Fix null deref becaues of incorrect error print 2016-02-07 18:43:14 +01:00
baldurk 2c0751c338 Change texdisplay.frag shader to be work with LunarG intel icd compiler 2016-02-07 18:43:13 +01:00
baldurk 1fd3d4ba29 Handle buffer or image ending up as VK_NULL_HANDLE in memory barriers 2016-02-07 18:43:13 +01:00
baldurk 2686ad698c Mark queue as referenced when submitting through it 2016-02-07 18:43:12 +01:00
baldurk e958b9925c Demote logs to debug prints 2016-02-07 18:43:11 +01:00
baldurk 307052b467 For now, persistent maps are ones that have been going for many frames 2016-02-07 18:43:10 +01:00
baldurk ac0f1c6540 Only put memory binds into frame capture record if they're not the first 2016-02-07 18:43:09 +01:00
baldurk 08a63f2c0b Serialise image layout in CmdCopyBufferToImage properly 2016-02-07 18:43:08 +01:00
baldurk 31274c7c1c Make sure going between WRITING_IDLE and WRITING_CAPFRAME is atomic
* This fixes a bug we had before, where we'd go into CAPFRAME then do a
  bunch of work before clearing the frame record.
* The threading around this probably needs more careful thought - e.g.
  the snapshotting and chunk insertion on end capture.
2016-02-07 18:43:07 +01:00
baldurk 18bcd75db7 Fix LogicalNot vs LogicalNotEqual 2016-02-07 18:43:06 +01:00
baldurk 0c55322abf Allow sType to be wrong for VkDeviceQueueCreateInfo for now
* Dota passes 0 (APPLICATION_INFO) - presumably it's init'd with {0}
  and the code doesn't set it properly yet as it's new.
2016-02-07 18:43:05 +01:00
baldurk b72858b42f Check image aspect mask by & not by == 2016-02-07 18:43:05 +01:00
baldurk e645728300 Make sure to serialise extensibility members in VkDeviceQueueCreateInfo 2016-02-07 18:43:04 +01:00
baldurk 9bbfa2a55f Add todo about fetching dynamic state from either pipeline or dynamic 2016-02-07 18:43:03 +01:00
baldurk 731c37b6c4 Check the right buffer resource object for different descriptor types 2016-02-07 18:43:02 +01:00
baldurk ca79cfecb6 Don't try and wait on semaphores on replay
* We don't track & restore semaphore signalled/unsignalled state on
  replay, so it's not valid anyway. Just be conservative and wait for
  idle.
2016-02-07 18:43:01 +01:00
baldurk ee1460dcaa Update C# vulkan pipeline state structs to match 2016-02-07 18:43:00 +01:00
baldurk 915f0b0b6c Initialise dynamic state values to empty state 2016-02-07 18:42:59 +01:00
baldurk 1bc3b77406 Verify that DbgCreateMsgCallback is present before calling it 2016-02-07 18:42:58 +01:00
baldurk 5bb2e23182 Add InitInstanceReplayTables() to fetch Dbg*MsgCallback functions 2016-02-07 18:42:58 +01:00
baldurk bd2f518343 Set correct usage bits on output window backbuffer images 2016-02-07 18:42:57 +01:00
baldurk 40343a9414 Change VK_IMAGE_ASPECT_COLOR to COLOR_BIT in image aspect masks 2016-02-07 18:42:56 +01:00
baldurk b0d7501364 Linux compile fixes 2016-02-07 18:42:55 +01:00
baldurk b2bc46913c Remove eRes*State enums 2016-02-07 18:42:54 +01:00
baldurk 685f48a55f remove references to $VULKAN_SDK_SRC, delete not-needed loader patch 2016-02-07 18:42:53 +01:00
baldurk c4c002703e Update SPIR-V disassembly for rev 32 2016-02-07 18:42:52 +01:00
baldurk 758ff74df6 Update DLL filename 2016-02-07 18:42:51 +01:00