Commit Graph
6353 Commits
Author SHA1 Message Date
baldurk 074ee8d8b8 Update GL replay to new serialisation & renderstate 2017-11-08 18:24:28 +00:00
baldurk d1e4d65447 Update GL renderstate to new serialisation system, using GLResource
* The renderstate now saves textures, buffers, etc as GLResource so they
  are naturally saved and restored to Ids by the GLResource serialise
  function.
2017-11-08 18:24:28 +00:00
baldurk 2982b2f8cf Update GL replay initialisation code to new RDCFile based scheme 2017-11-08 18:24:27 +00:00
baldurk 86cf11a6f6 Add direct serialisation of typed GLResource handles 2017-11-08 18:24:26 +00:00
baldurk d96e0b01bf Move GL's stringise functions into a separate file 2017-11-08 18:24:26 +00:00
baldurk f2eb9841e4 Set gl_CurChunk in entry points, forward aliases to real functions 2017-11-08 18:24:24 +00:00
baldurk b889843b01 Change GL chunk enum to contain all supported function entry points
* Many of these chunks will be identical, but we use the chunk ID to
  store which function exactly was originally called.
2017-11-08 18:24:24 +00:00
baldurk 5ac10b9406 Use structured data exposed from replay controller to document API calls 2017-11-08 18:24:23 +00:00
baldurk 7ca6c80414 Add ability to convert a capture to structured data without replaying 2017-11-08 18:24:22 +00:00
baldurk 15f78b7ffd Re-enable Vulkan driver 2017-11-08 18:24:22 +00:00
baldurk 076c203f9a Update drawcall wrapping Vulkan functions 2017-11-08 18:24:21 +00:00
baldurk a1aeebb462 Update command-recording function wrappers 2017-11-08 18:24:20 +00:00
baldurk e7dca4beb7 Update vulkan resource handling wrappers 2017-11-08 18:24:20 +00:00
baldurk 10ce7ee266 Update vulkan queue wrapping functions 2017-11-08 18:24:18 +00:00
baldurk f2645cb634 Update physical/logic device handling wrapper functions 2017-11-08 18:24:18 +00:00
baldurk 6a00d45b58 Update vulkan miscellaneous/independent wrappers 2017-11-08 18:24:17 +00:00
baldurk 85132729de Update vulkan shader and pipeline wrapping functions 2017-11-08 18:24:16 +00:00
baldurk b9f752923a Update vulkan descriptor-handling wrappers 2017-11-08 18:24:16 +00:00
baldurk 74861c7417 Update vulkan dynamic-state setting wrapper functions 2017-11-08 18:24:15 +00:00
baldurk 553d821c37 Update vulkan synchronisation functions 2017-11-08 18:24:14 +00:00
baldurk 7329d864ec Update vulkan WSI function wrappers 2017-11-08 18:24:14 +00:00
baldurk 3770526590 Update vulkan query function wrappers 2017-11-08 18:24:13 +00:00
baldurk d3069b74ad Update core vulkan driver code 2017-11-08 18:24:12 +00:00
baldurk fd680f4a8b Convert vulkan initial state handling to new serialisation system 2017-11-08 18:24:12 +00:00
baldurk 5a1a3fb6cf Update vulkan chunk enum to enum class, use ToStr for stringify-ing 2017-11-08 18:24:11 +00:00
baldurk c7ede6725a Update OS-specific WSI wrapping code 2017-11-08 18:24:11 +00:00
baldurk 51e62a447a Update VulkanResourceManager to newest code 2017-11-08 18:24:10 +00:00
baldurk 6d360d3228 Update vulkan replay initialisation to new RDCFile mechanism 2017-11-08 18:24:09 +00:00
baldurk 651ba25919 Update Vulkan common struct serialisation & split it into separate file
* This also includes serialising vulkan handles as Ids by type instead
  of using a macro as before.
* In contrast to the old code, we serialise handles as the wrapped type
  since e.g. when serialising a command buffer in a vkCmd* function we
  want to get back the wrapped type. This means some structs need to be
  unwrapped on replay when before they were "pre-unwrapped" after the
  serialisation, but this isn't a big deal.
2017-11-08 18:24:08 +00:00
baldurk ae32f791ae Re-enable D3D8 and D3D9 drivers 2017-11-08 18:24:08 +00:00
baldurk e771032d2d Update D3D8 and D3D9 stub projects to new code 2017-11-08 18:24:07 +00:00
baldurk dbe29142b0 Re-enable D3D11 and DXBC drivers 2017-11-08 18:24:07 +00:00
baldurk 3a250992e5 Update D3D11 renderstate with latest code and serialisation 2017-11-08 18:24:06 +00:00
baldurk 545c7831d4 Change D3D11.3 device wrapping to new serialisation system 2017-11-08 18:24:05 +00:00
baldurk 37ef704a3b Change D3D11.1 context wrapping to new serialisation system 2017-11-08 18:24:05 +00:00
baldurk 59dd1738c0 Change D3D11.1 device wrapping to new serialisation system 2017-11-08 18:24:04 +00:00
baldurk 2fe0193b49 Update D3D11 context wrapping to new serialisation scheme 2017-11-08 18:24:03 +00:00
baldurk 0027ff1a10 Change D3D11 device wrappers to new serialisation method 2017-11-07 19:51:46 +00:00
baldurk 9194157eec Add explicit template instantiation of serialise functions 2017-11-07 19:51:45 +00:00
baldurk 50f2bae91e Update non-wrapping D3D11 context code 2017-11-07 19:51:45 +00:00
baldurk 81a4e718cb Update non-wrapping D3D11 device code 2017-11-07 19:51:44 +00:00
baldurk da441b675c Serialise ID3D11Interface * pointers directly, with internal ID conv
* The serialise function handles fetching the ID on write, and looking
  up the resource manager to fetch the handle on read.
* This allows us to do nice things like:
  Serialise_SetConstBufs(SerialiserType &ser, UINT NumBuffers,
      ID3D11Buffer *const *ppConstantBuffers)
  {
    SERIALISE_ELEMENT_ARRAY(ppConstantBuffers, NumBuffers);
    // ...
  }
  And the array handling and serialise recursion will correctly iterate
  and serialise the array as a series of ResourceIds, then restore it
  as a series of handles.
2017-11-07 19:30:43 +00:00
baldurk aafdc88fd2 Update D3D11 initial state handling to write directly from mapped buffer 2017-11-07 19:30:42 +00:00
baldurk a36d379360 Change D3D11 replay initialisation to new system with RDCFile* 2017-11-07 19:30:42 +00:00
baldurk d41eeb432d Change D3D11 Chunks to enum class, improve names & use ToStr 2017-11-07 19:30:41 +00:00
baldurk f419723160 Update serialisers of D3D11 structs to new format, in split out file 2017-11-07 19:30:40 +00:00
baldurk d33b3f5940 Re-enable DXGI driver 2017-11-07 19:30:39 +00:00
baldurk 5024fd0f35 Update DXGI project to latest code 2017-11-07 19:30:39 +00:00
baldurk b36a0decdf Change LogState to CaptureState and add more intuitive helper functions 2017-11-07 19:30:38 +00:00
baldurk 2a4612b92e Update win32 thumbnail shell extension to use RDCFile to fetch thumbnail 2017-11-07 19:30:37 +00:00