Commit Graph
4918 Commits
Author SHA1 Message Date
baldurk b4f711af7d Pass along HDR multiplier to vulkan texture rendering 2018-02-22 19:46:40 +00:00
baldurk 9b98567d65 Fix error message duplicated in vulkan object create macro 2018-02-22 15:49:48 +00:00
baldurk f52de8d216 Be careful not to overlap multidraws in GL when replaying event-to-event 2018-02-21 18:33:15 +00:00
baldurk cc16a81d2c Add necessary extension for compiling #version 150 fixedcol.frag
* Previously we were implicitly satisfying this by making it a separable
  program.
2018-02-21 18:32:52 +00:00
baldurk a57cc118af Add events for markers in GL/D3D11 so they don't mess up replay
* If a marker was the very first event, we want to be able to fetch it
  so the replay isn't off-by-one after that.
2018-02-21 18:29:51 +00:00
baldurk b74f917975 Add application API version 1.1.2, with renamed log file -> capture file 2018-02-20 20:33:30 +00:00
baldurk db1cc10598 Unset pipeline state values if shaders/pipelines are not bound
* Since we're updating a single member struct in-place and not starting
  from a clean slate, we need to be sure to unset state values instead
  of just skipping them and assuming the default is empty.
2018-02-20 13:33:23 +00:00
baldurk 13c1cf6ad4 Return ReplayStatus when launching/injecting, use to indicate JDWP error
* If android studio or other android tools are open when a package is
  launched for debugging, they greedily jump on it and connect which
  prevents us from connecting.
2018-02-20 11:54:57 +00:00
baldurk dbfa3cdc4d Remove DrawFlags::SetMarker from API Calls events
* This made them behave inconsistently and was not really necessary
  anyway.
2018-02-20 10:02:40 +00:00
baldurk 13b2b3b15e Inherit renderpass state from primary into secondary command buffers 2018-02-19 21:04:43 +00:00
baldurk 4b7f6d7d71 Be explicit when encountering an unsupported SPIR-V version 2018-02-19 21:04:32 +00:00
baldurk 3b73ca9fe4 Fix double-application of index byte offset in GL vertex picking 2018-02-19 18:40:15 +00:00
baldurk 0fea65d741 Implement barrier EventUsage tracking on D3D12 2018-02-19 18:24:28 +00:00
baldurk 52de64de26 Fix column major matrix transpose when reading cbuffer values. Refs #800 2018-02-19 17:41:37 +00:00
baldurk 2eb56e4279 Display matrix memory order in cbuffer type column. Refs #800 2018-02-19 11:53:20 +00:00
baldurk 41112d10e5 Allow uuid for ID3D12CommandList in CreateCommandList
* This is as well as ID3D12GraphicsCommandList which is the actual
  type returned.
2018-02-19 10:51:50 +00:00
baldurk 1792673864 Show an error message if saving changes fails 2018-02-19 00:52:14 +00:00
baldurk 934800793a Improve workflow for capture import/export
* If the export doesn't need buffers, we export directly from the loaded
  capture file instead of re-loading it.
* Add progress bars for the load step so it shows what's happening
  instead of looking stalled.
* Reduce compression rate on XML+ZIP buffers as it took too long trying
  to compress when exporting large captures.
2018-02-19 00:52:13 +00:00
akharlamov 48c2678fed Fix stringifcation of VkAttachmentStoreOp enum 2018-02-17 01:11:18 +00:00
baldurk c1da853854 Fix test that now has FixedArray flag 2018-02-16 13:25:23 +00:00
baldurk 41ba4be01e Don't serialise anything in between serialising buffer & fetching offset 2018-02-16 13:15:22 +00:00
baldurk f3f688fd48 Fix crashes if exporting structured data with open D3D12 capture 2018-02-16 12:37:44 +00:00
baldurk 81b9a94bbe Change label at the start of D3D12 command list 2018-02-16 12:37:30 +00:00
baldurk 8126e182e0 Don't modify renderstate unless recording partial command list 2018-02-16 12:37:01 +00:00
baldurk de64755667 Add a structured data flag for fixed-size arrays 2018-02-16 09:39:46 +00:00
baldurk 7c7a4ae5ea Fix a crash if framebuffer size changes before overlay is set. Refs #863 2018-02-15 17:48:15 +00:00
baldurk ec1e21de35 Don't apply basevertex to restart indices when caching 2018-02-15 17:08:14 +00:00
baldurk 56e87514f6 Enable primitive restart for rendering strip-topology meshes. Refs #862 2018-02-15 17:07:38 +00:00
baldurk ea929668a7 Create android package data directory in case app doesn't do it natively 2018-02-15 16:43:11 +00:00
baldurk 38d87b9b3b Don't be surprised by multiple functions in SPIR-V editing
* Once we've reached the function bodies we can ignore any more function
  opcodes.
2018-02-15 16:03:14 +00:00
baldurk 32a360db8f Per-instance flag array should be indexed by attribute binding index 2018-02-15 15:17:12 +00:00
baldurk 96f611e649 Fix a couple of cases where re-ordering serialisation broke logic 2018-02-15 15:16:50 +00:00
baldurk 33b1470d20 Add missing CaptureOptions encode 2018-02-15 14:18:17 +00:00
baldurk c3ce289da4 Fix crash if vertex input elements are not compact 0-based indices 2018-02-15 12:47:15 +00:00
baldurk 48b7af9e87 Fix case trying to allocate off the end of a memory block
* If we're aligned up past the size of the allocation (possible if we
  apply bufferImageGranularity due to the incoming allocation being
  image and the last allocation in the block being a buffer) the next
  required offset would be past the size, so avail = block.size - offs
  would overflow and we'd try to allocate past the end of the block.
2018-02-15 11:41:33 +00:00
baldurk 9b1a937e57 Fix unit tests 2018-02-15 11:21:24 +00:00
baldurk ce6275920e Fix typos in vkCmdClear*Image. Thanks to @null77. Refs #876 2018-02-15 10:57:32 +00:00
baldurk 919c0f11dd Override type for structured data when directly serialising a ResourceId 2018-02-15 10:57:31 +00:00
baldurk 64406b47a3 Add an SDBasic type for ResourceId.
* This type is core enum and used globally (not API specific) that it
  merits becoming a specific structured data type
2018-02-15 10:21:52 +00:00
baldurk a1c104f6f8 Serialise VkMemoryHeap::flags as typed enum 2018-02-15 10:09:38 +00:00
baldurk 80128f8e9f Stringise VkFlagWithNoBits as 0 instead of empty string 2018-02-14 22:35:50 +00:00
baldurk 453b4e7d6e Serialise GL FBO 0 properly as a real resource, not as "no resource" 2018-02-14 19:55:13 +00:00
baldurk 90a6683e2b Fetch ResourceId even for handle == 0
* This happens in two cases - the legal one for FBO 0 (the window's
  backbuffer) - and the compatibility one for VAO 0.
2018-02-14 19:30:23 +00:00
baldurk 04fac1d6f8 Use android properties to pass capture options to the device 2018-02-14 19:22:23 +00:00
baldurk 468c6c1e80 Wrap up CaptureOptions encoding via string into member util functions 2018-02-14 19:21:55 +00:00
baldurk 1ee01e1f82 Apply a normalisation pass over the serialised data
* This is a backwards-incompatible change, so it's done here before v1.0
  so that we can freely break compatibility and not need to define a lot
  of ugly compatibility code.
* The primary motivation is to make the serialised data more uniform
  and have fewer special cases where the serialised form is naturally
  defined from the functions/structs in question.
* There are still some special cases or variances but they should be
  more isolated and only where really necessary.
* Remove some cases in the D3D12 struct serialising where we were
  directly serialising child struct members in the parent struct.
* We now try to match argument/struct member order as closely as
  possible.
* Serialising an array with a count no longer reads the count back out
  into that variable, counts must be serialised separately. This means
  all members/arguments are explicitly present in the structured data
  and also eliminates the awkward case where a count needed to be
  serialised separately after an array if we want to have the count be
  a valid number even if the array could be NULL. It also means we don't
  need the FIXED_COUNT() macro since array lengths can be plain values
  and don't have to be a reference type.
2018-02-14 15:57:53 +00:00
baldurk b0f2f6de58 For bitfields with no values set, return Type(0) instead of "" 2018-02-14 00:41:16 +00:00
baldurk ef12af50b4 Fix some issues when exporting vulkan structured data. 2018-02-14 00:41:04 +00:00
baldurk 2d07861227 Remove special case strings from vulkan stringification 2018-02-13 21:10:13 +00:00
baldurk 60324e7e38 Add a small sleep into JDWP connection code to workaround JVM bugs
* It's unknown why this matters but on some android devices adding a
  small sleep prevents problems with JDWP replies not coming through.
2018-02-13 21:10:12 +00:00