Commit Graph

37 Commits

Author SHA1 Message Date
baldurk 237b24e88e Remove printing of buffers as floats. Refs #395
* There's no guarantee that the buffer is actually float data at all,
  so printing it as such can cause float exceptions if the data includes
  NaNs.
* This is not really useful anymore anyway, and if really needed the
  float values can be manually converted from the hex data.
2016-10-13 16:06:25 +02:00
baldurk 726425ee88 Keep chunk count valid with duplicated chunks 2016-09-08 15:50:36 +02:00
baldurk 78ef96b2e7 Set up capturing to flatten/deinterleave deferred context recording 2016-09-05 20:12:40 +02:00
baldurk d2faf76356 Save machine ident in captures and compare to machine ident on open
* If the machine idents differ in significant ways that we'd consider
  it to be a different platform (currently just OS), and if so mark it
  as supported but suggested to be replayed remotely.
2016-08-19 17:26:36 +02:00
baldurk 80bdfe6058 Fix errors and leaks found by valgrind on linux replay host
* These are some leaks, some mismatched new/deletes and some uninit'd
  values. Mostly the leaks are what we care about so that the replay
  host can be kept alive for a long time rather than needing to be
  constantly restarted.
* Also added a valgrind suppression file to suppress some of the false
  positives I ran into while testing.
2016-07-14 20:37:32 +02:00
baldurk 6c5573ec3b Coverity: Delete allocated section in error case 2016-06-09 13:56:54 -07:00
baldurk c1f66de413 Add early OS X compiling support from @Zorro666 - still non-functional!
* Build with cmake -DENABLE_VULKAN=OFF -DENABLE_QRENDERDOC=OFF
2016-05-31 12:05:45 +02:00
baldurk 5f28b745a2 Format code according to newly added clang-format
_  /)
                 mo / )
                 |/)\)
                  /\_
                  \__|=
                 (    )
                 __)(__
           _____/      \\_____
          |  _     ___   _   ||
          | | \     |   | \  ||
          | |  |    |   |  | ||
          | |_/     |   |_/  ||
          | | \     |   |    ||
          | |  \    |   |    ||
          | |   \. _|_. | .  ||
          |                  ||
          |repository history||
          |                  ||
  *       | *   **    * **   |**      **
   \))ejm97/.,(//,,..,,\||(,,.,\\,.((//
2016-05-22 19:41:53 +02:00
baldurk cda0b4cb5a Enable warning C4189: local variable is initialized but not referenced 2016-04-09 11:24:45 +02:00
Chia-I Wu 69c33da1e7 Include errno.h for errno 2016-03-12 06:29:19 +08:00
baldurk d987423fb9 Linux compile fix - only specialise ToStr on long for windows 2016-03-01 19:32:10 +01:00
baldurk a347b54be4 Add some needed ToStr implementations 2016-02-27 17:51:19 +01:00
baldurk 19a0fc5094 Remove some deprecated code 2016-02-07 18:51:50 +01:00
baldurk 0bdd186550 VS2015 warning fix (shadowed variable) 2016-02-07 18:50:51 +01:00
baldurk 2e0ffa7813 Batch update copyright years everywhere 2016-02-07 18:50:45 +01:00
baldurk 24aa8b3daf Remove singleton from VulkanResourceManager, pass it where needed 2016-02-07 18:44:30 +01:00
baldurk 78fc832722 Don't copy debug string if there's nothing there 2016-02-07 18:42:22 +01:00
baldurk 65011ebcfa Pass scoped context name/type directly, don't combine into temp string 2016-02-07 18:42:16 +01:00
baldurk 607b8d48c9 Remove 'debug' serialiser that synchronously flushes out debug text 2016-02-07 18:42:15 +01:00
baldurk fe414dfc9c Only reset debug text on indent level 0 2016-02-07 18:41:03 +01:00
baldurk 1b8d291874 Avoid pointless multiple file passes, now that seeking isn't cheap 2015-09-18 22:37:44 +02:00
baldurk 822a235349 Make sure not to try and use compressed reader for non-compressed logs 2015-09-15 18:52:43 +02:00
baldurk 219bd2d434 Refactor serialisation format with new version
* The main improvement is that instead of just callstack resolving DB
  and frame capture data, some arbtirary number of sections can be
  included, for e.g. adding notes or saving the bookmarks or whatever
  use the user wants.
* Sections (namely the frame capture data) can now be (de)compressed on
  I/O, which leads to much smaller file sizes.
* Also the default internal alignment has changed from 16 to 64 to be
  more future proof (I decided not to go with completely arbitrary
  alignment).
* A path for loading previous version logs remains and will be removed
  at some point in the future, maybe a version or two down the line.
2015-09-14 09:25:46 +02:00
baldurk e6621c8956 Don't recreate callstacks, instead re-set stack in consistent instance 2015-09-13 21:20:29 +02:00
baldurk 3dac5fe624 Fix calculation for aligning next serialised buffer. Refs #133 2015-04-28 12:21:36 +02:00
baldurk 584d439620 Add util function to align serialised buffers in chunks. Refs #133
* To align a buffer inside a chunk to a wider boundary like 32-bytes in
  this case, the chunk needs to be aligned and the buffer within it also
  needs to be aligned.
* The utility function accounts for the buffer serialised having a
  uint32 length in front of it, so it pads out until that will be at
  the desired boundary. This is a bit of a messy solution, but the
  easiest way to ensure the padding is there while being easily
  backwards compatible with old logs without the padding.
* D3D11 and GL serialise versions are bumped, D3D11 version is backwards
  compatible, GL breaks compatibility.
2015-04-24 11:07:02 +02:00
baldurk 24df051659 Skip any empty-named serialised items in serialiser debug text string 2015-04-24 10:21:04 +02:00
baldurk 6cd1f70bb6 Fix several warnings for compiling on VS2015
* Note at the time of committing there are still some warnings in MS
  headers that you might need to suppress in a couple of files.
* 3rd party code just has the warnings suppressed for ease of merging.
* The majority of warning fixes were for local variables shadowing
  other locals, function parameters, or members. In most cases they
  weren't a problem, but in some cases it was potentially dangerous!
2015-03-13 10:16:19 +00:00
baldurk c9f106b0cb Fix up the replay proxy serialising functions
* Also add some compile time asserts to try and help keep them working.
2015-01-28 12:34:12 +00:00
baldurk f73a7a4a0c Support ARB_map_buffer_alignment on 64byte boundaries
* The real implementation can do more if it wants, and align to a larger
  alignment, but we just return 64 to the program and align to that, which
  satisfies the extension minimum requirements (and chances are no program
  takes advantage of wider alignment anyway).
2014-12-26 16:04:22 +00:00
baldurk 119d9242ab Demote error to warning
* This is the error 6152332e36 was intended
  to address!
2014-12-15 19:06:44 +00:00
baldurk 6152332e36 Demote error to warning when failing to open a logfile
* This means you don't hit a debugbreak and fire an exception in profile if
  you load an image file (which tries to load as a logfile first, and
  fails).
2014-12-11 19:18:25 +00:00
baldurk ffdcf5444e Don't print random data as a string 2014-12-01 18:36:40 +00:00
baldurk 2484bc8bc7 Use UTF-8 everywhere possible and only use wchar_t where required.
* This means that all APIs pass byte string types. ALL strings everywhere
  in the entire codebase must be assumed to be and treated as UTF-8 content
  not ASCII.
* Gets rid of all the horrible %hs specifiers that caused warnings on
  linux! Hooray.
* We convert to wide strings, or use wide characters, only when necessary
  to use the Win32 API. Some windows specific code will stay in wide chars
  just for convenience.
* Files are already serialised as UTF-8 strings for linux/windows binary
  compatibility, so this change doesn't break backwards compatibility.
2014-11-23 14:45:16 +00:00
baldurk 1f33368624 Allow resource managers to set initial contents chunk directly
* Also use Serialiser::Alloc/FreeAlignedBuffer for the blobs
2014-11-11 22:54:55 +00:00
baldurk 6fbb247efd Re-organise external-facing headers to be more easily used
* renderdoc/api/replay/ contains all the headers for using the replay and
  analysis side of renderdoc (like in a UI or auto-testing tool)
* renderdoc/api/app/ contains the headers if you wanted to write a
  renderdoc-aware application.
2014-09-13 12:52:25 +01:00
baldurk c38affcded Initial commit of existing code.
* All renderdoc code up to this point was written by me, history is available by request
2014-05-02 08:33:01 +01:00