Commit Graph

40 Commits

Author SHA1 Message Date
baldurk 9a3905272d Update to the final frozen 1.0 header 2016-02-07 18:50:57 +01:00
baldurk 2e0ffa7813 Batch update copyright years everywhere 2016-02-07 18:50:45 +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 7e3cd76676 Stencil texture display and picking (unsigned/signed int as well) 2016-02-07 18:49:08 +01:00
baldurk 961616428d Add texture sampling code for all types/formats 2016-02-07 18:49:07 +01:00
baldurk 795fbcaf8d Fix some misc bugs 2016-02-07 18:48:35 +01:00
baldurk 63d643d43c Replay functions compiling 2016-02-07 18:48:31 +01:00
baldurk 092abb7b27 Update sparse mapping utility functions for renamed members 2016-02-07 18:48:24 +01:00
baldurk 7545d1902f Fix resource utility functions 2016-02-07 18:48:24 +01:00
baldurk cdaffe0698 Remove WrappedVkShader 2016-02-07 18:48:17 +01:00
baldurk a72b32eb23 Rename VkCmdPool -> VkCommandPool 2016-02-07 18:48:16 +01:00
baldurk 75a31f9f09 Rename VkCmdBuffer -> VkCommandBuffer 2016-02-07 18:48:15 +01:00
baldurk 9bd7ed9d61 Improve text reporting for render pass load/store operations 2016-02-07 18:47:51 +01:00
baldurk 0b38e895e7 Fix error identifying NULL resource for frame record 2016-02-07 18:45:57 +01:00
baldurk 2decca5f27 Reorganise VkResourceRecord to reduce wasted space
* This reduces the total size from 448 bytes -> 232 bytes, but does mean
  some extra pointer chasing. I'm not sure what the best balance is so
  this will do for now and I'll wait and see if profiling turns up any
  issues.
2016-02-07 18:45:53 +01:00
baldurk fe8440363b [Sparse #5] Implement stubs for updating page tables (opaque or image)
* Not supporting images with arrays or mips for now as that becomes
  more complicated. In theory a page table each, but then need to handle
  mip tail and stuff.
2016-02-07 18:45:41 +01:00
baldurk 28f448ea6f [Sparse #4] Serialise out sparse binding changes that happen mid-frame
* Also add stub calls to update in-memory tracked pages
2016-02-07 18:45:40 +01:00
baldurk 803e626e8d [Sparse #3] Create sparse info structs on resource creation 2016-02-07 18:45:39 +01:00
baldurk fb3ccc9994 Finish map-intercept handling for now.
* Currently I've decided to stick with the scheme of reading back from
  mapped pointers where necessary to either compare or serialise. This
  is because the bookkeeping for intercepting memory maps is quite
  complex and right now it seems hard to justify as the overhead of the
  readback is not significant enough to worry about. Unless we encounter
  a case where the readback is hugely slower and frame captures begin to
  take 10s of seconds longer, it's not justifiable.
2016-02-07 18:45:01 +01:00
baldurk 156c75b26d Modify memory properties to discourage coherent maps & remap memory idxs 2016-02-07 18:44:58 +01:00
baldurk 98808226bb Split cmdbuffer data into stuff under resource record, and replay state 2016-02-07 18:43:59 +01:00
baldurk 0ff8501561 Move swapchain info either under resource record or into creationinfo 2016-02-07 18:43:57 +01:00
baldurk 1f42e54145 Move shadermodule/shaderinfo into creationinfo, which is replay-only 2016-02-07 18:43:56 +01:00
baldurk 4336722e34 Tidy up FetchTexture data for vulkan, fill out all fields properly 2016-02-07 18:43:35 +01:00
baldurk 4ebbf09364 Get replay to display textures in gamma-correct fashion 2016-02-07 18:43:31 +01:00
baldurk d48fb6ece4 Update WSI to new extension. Also misc structs, functions and enums 2016-02-07 18:42:45 +01:00
baldurk a214e9bdec Remove dynamic state objects 2016-02-07 18:42:43 +01:00
baldurk a05faed555 Remove VkAttachmentView 2016-02-07 18:42:42 +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 4254f54d92 Fix some more wrapping/unwrapping issues 2016-02-07 18:40:14 +01:00
baldurk 302060bea6 ToStr function for VkResourceType 2016-02-07 18:39:59 +01:00
baldurk bd3f1c3002 Split dispatchable and non-dispatchable types up, to preserve tables 2016-02-07 18:39:58 +01:00
baldurk 2bbfa66d72 Add pool identification utility function 2016-02-07 18:39:53 +01:00
baldurk e9342a32e7 Add VkWrappedRes struct with wrapping allocated pools 2016-02-07 18:39:51 +01:00
baldurk 26f773684a Track enough while READING to set drawcall topology/index width 2016-02-07 18:39:32 +01:00
baldurk 85defbeeeb Linux compile fixes 2016-02-07 18:39:10 +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 9edc9bb167 Add util function to identify depth stencil formats 2016-02-07 18:37:47 +01:00
baldurk 497f6176e7 Add vulkan driver based on mantle work, with linux hooks based on GL 2016-02-07 18:37:25 +01:00