Commit Graph

30 Commits

Author SHA1 Message Date
baldurk 607b8d48c9 Remove 'debug' serialiser that synchronously flushes out debug text 2016-02-07 18:42:15 +01:00
baldurk e3ca8d0773 For now, handle persistent maps during capture by forcing flush
* This is ugly and will change once maps are properly intercepted, but
  works for now.
2016-02-07 18:41:27 +01:00
baldurk 26d99bf7bb Handle stale & unreferenced resource handles in descriptor sets
* It's possible to replay with descriptor set slots (and updates)
  referring to resources that don't exist at replay time, if those sets
  are never actually used in a queue that's submitted and the resource
  isn't referenced otherwise. For this reason we need to be able to
  skip initial contents or descriptor updates that refer to these
  unused resources.
2016-02-07 18:41:19 +01:00
baldurk 250b59e07c Move compile asserts out, as g++ can't use AllocByteSize in class def 2016-02-07 18:40:06 +01:00
baldurk e9342a32e7 Add VkWrappedRes struct with wrapping allocated pools 2016-02-07 18:39:51 +01:00
baldurk 8b7a025853 Refactor BGRA formats to not be special (so allow any BGRA format)
* Also add ASTC and D16S8 types while in the neighbourhood
2015-11-29 22:05:26 +01:00
baldurk c7cfdcc689 Add basic support for displaying/picking S8 textures. Refs #165 2015-10-25 14:09:43 +01: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 5fccf87d43 Only check that DDPF_FOURCC flag is set, not that it's the only flag 2015-09-13 14:06:13 +02:00
baldurk adaf3b25e6 Remove orphaned file 2015-06-19 22:37:30 +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 8ccf071865 Implement GetTextureData for GL - underlying code behind texture saving
* This should support all forms of textures off the bat, multisampled
  textures, 3D textures, arrays, compressed and uncompressed, etc.
2015-02-09 17:29:13 +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 c4f73c2b58 Handle deleting logfile at program shutdown in core destructor
* Prevents order-of-destructor issues from losing the log filename before
  the core destructor uses it to delete the logfile.
2014-11-30 15:45:19 +00:00
baldurk 4a79ac8039 Move CalcNumMips to common header so GL code can access it 2014-11-28 21:12:17 +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 6b9287470d Refactor log printing to use new custom printf. 2014-11-23 13:56:28 +00:00
baldurk 940f742e04 Implement DDS reading, add function to quickly check header exists 2014-09-25 16:19:47 +01:00
baldurk 0e6085ea20 DDS writing fixes for cubemaps & 3D textures with mips 2014-09-25 16:19:12 +01:00
baldurk 9f62428f7f Move DDS writing code out from d3d11 driver 2014-09-16 01:18:00 +01:00
baldurk bbc355ad44 Disable stdout/stderr on windows as it just conflicts with debugout 2014-09-03 23:12:06 +01:00
Baldur Karlsson a728f3289b move RDCBREAK() OS-implementation from inline function to macro
* It's a little messier as it's easier for the os-specific header to not
  define it and get confusing errors, but that's a one-time problem and
  having an extra function in a callstack and not showing source at the
  point of the RDCBREAK is annoying every time.
2014-07-28 12:17:34 +01:00
baldurk e94726cbc1 linux compile fixes 2014-07-22 10:46:19 +01:00
baldurk 85a4a8cccd Add uint8_t -> float SRGB conversion function (using LUT) 2014-07-13 18:55:03 +01:00
Baldur Karlsson f00815818a Include stddef.h for size_t 2014-06-26 11:42:08 +01:00
Baldur Karlsson 1b5a68382c Move find-modified-range function out of D3D11 driver to common 2014-06-24 15:44:47 +01:00
Rasmus Christian Pedersen 01da98996b wrapped pool: IsAlloc constness
This commit changes WrappingPool::IsAlloc to take a const pointer as argument
as pointer isnt modified. ItemPool::IsAlloc is changed to a const function
taking a const poiner as argument.
2014-05-07 20:34:27 +02:00
Rasmus Christian Pedersen 37a5f1c8e1 threading: HasLock const function 2014-05-07 20:34:27 +02:00
Rasmus Christian Pedersen e783ae4473 timing: constness fix 2014-05-07 15:18:44 +02: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