Commit Graph
171 Commits
Author SHA1 Message Date
Michael Rennie ab71450fb0 Add offset to Android network ports, to differentiate from localhost.
This requires adb forward to include the offset, for example:
adb forward tcp:38970 tcp:38920
adb forward tcp:39970 tcp:39920
2016-09-15 13:42:05 +01:00
baldurk c9eeef3151 [Coverity] Add proper NULL check before comparison 2016-09-14 17:41:14 +02:00
baldurk 4dc9857341 detect adb: (invalid in normal hostname) as android remote target
* For now, just redirect to 127.0.0.1 and assume the user has proper
  port forwarding set up, but in future we'd do this ourselves and maybe
  parse out a device name after the adb:
2016-09-12 20:05:51 +02:00
baldurk 3695d7de6d Save EXR images in ABGR channel order, for compatibility with viewers
* It seems many viewers don't look at the order specified, and just
  assume that the channels are in ABGR order. Changing it won't affect
  any loaders that do respect that order.
2016-09-10 16:26:19 +02:00
baldurk d461e40711 When an unsupported API version is requested, print supported versions 2016-09-08 15:51:06 +02:00
baldurk b36475cf9c Remove now-unused functionality, context filter and deferred events 2016-09-05 17:55:12 +02:00
baldurk 9acd1777cd Fully initialise structure 2016-09-02 14:48:07 +02:00
baldurk c539510da8 Only flip uncompressed texture data out of GL when saving to disk
* When transferring over the network, we keep texture data consistently
  in GL origin-bottom-left order. This means we can just flip images on
  display and otherwise have things consistently behaving, while still
  preserving the behaviour of flipping on saving to disk to try and
  mostly 'do the right thing' when saving an image.
* The behaviour should be the same as before except for remote proxying
  which is fixed. The behaviour for GL is still that compressed images
  saved as compressed will appear to flip vertically from what is
  natively displayed in the UI, but I think this is the only sensible
  way to behave (and anyway, flipping compressed images is far too
  involved to be worthwhile).
2016-08-24 15:53:59 +02:00
baldurk 872fbe017b Make xlib and xcb support optional (but default on) on linux
* Also allow disabling GL a little better by removing the dependency in
  renderdoccmd.
* Disabling them now completely removes all xcb and xlib build
  dependencies. The resulting library/executable is only useful in
  limited situations - e.g. replaying vulkan remotely which doesn't need
  any window system interaction. Or capturing vulkan as well with the
  KHR_display WSI extension which doesn't need any built-time includes
  or libs.
2016-08-23 16:25:21 +02:00
baldurk a8cfc753df Bullet proof the replay renderer against the proxy going away suddenly 2016-08-23 13:37:24 +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 b5e6f8bef2 Allow specifying environment variable modifications
* This works for local and remote invocations of programs, but is mostly
  useful on unix systems (Windows programs use env vars less often)
2016-08-19 17:26:33 +02:00
baldurk 481a28dc29 Rename RemoteAccess to TargetControl to better disambiguate RemoteServer 2016-08-19 12:23:19 +02:00
baldurk 39f453b166 Rename replay host to remote server, consistently. 2016-08-01 19:38:21 +02:00
baldurk 535cec5b10 Don't error if GetBufferData() is called with ResourceId 0, just return 2016-07-25 18:27:15 +02:00
baldurk fefb6b2526 Pass selected slice/face and sample idx to custom vis shaders. Refs #304 2016-07-25 11:39:47 +02:00
baldurk ebb889a7ee Report supported windowing systems from replay, and choose which to use
* This is primarily for vulkan, which supports either xlib or xcb (and
  not necessarily both). GL still only supports xlib, windows and
  android only support one system regardless of API.
* This should also support xlib again for fetching keystates etc.
2016-07-22 18:23:30 +02:00
baldurk f492ddab27 Add missing handling of uscaled and sscaled formats 2016-07-21 16:06:10 +02:00
baldurk e8e1b34d26 [Coverity] Remove some dodgy code to iterate shader stages 2016-07-20 18:42:10 +02:00
baldurk 6545625874 [Coverity] Fix a bunch of partially-initialised structure warnings 2016-07-20 16:45:06 +02:00
baldurk aea036c34c Implement multi-draw indirect support for vulkan 2016-07-20 14:09:56 +02:00
baldurk bde21b0c73 Render custom shaders at the selected mip level. Refs #302 2016-07-19 20:40:11 +02:00
baldurk 5a64a78d2a Add multiple-frame capture, grabbing N successive frames to captures
* In-application API is bumped to 1.1.0 as a new function pointer is
  added to the end of the structure.
* This comes with some caveats - capturing a frame is fairly heavy
  weight, so capturing a frame might throw off timing-related bugs you
  are trying to capture in subsequent frames. If you know your bug is
  every other frame though, capturing two can be a quick way to ensure
  you get it.
2016-07-18 18:51:36 +02:00
baldurk 504b18ab3f D32S8 type formats are 8 bytes per pixel, not 5. 2016-07-13 15:52:19 +02:00
baldurk ced8a62af6 Add replay command (with optional remote replay) 2016-07-12 17:39:23 +02:00
baldurk 73dc89f25a Allow specifying a listen interface and port, for remote replaying 2016-07-12 17:39:22 +02:00
baldurk af3cfa8932 Add replay entry point to get git commit hash 2016-07-12 17:10:42 +02:00
baldurk 2373f0e445 Keep pixel context pixel size at consistent size for mips. Refs #301 2016-07-11 18:55:07 +02:00
baldurk 6608a965ed Fix sRGB handling on clear colours 2016-07-10 18:10:06 +02:00
baldurk f3216b38f5 Tweak string name of ResourceId to be all one word for easier searching 2016-07-10 18:09:36 +02:00
baldurk edbd1ce89b Pass through view format as a type hint to texture display/sampling
* This is only applicable really on D3D11 where the underlying texture
  can be typeless, and a default interpretation as unorm/float won't
  necessarily how the texture is actually being used.
2016-06-27 12:10:21 +02:00
baldurk 3fc510beb8 Compile fix - handle eUsage_Barrier in switch 2016-06-22 19:09:44 +02:00
baldurk 9ac0153e74 Use %llu to print out Resource IDs (they're all decimal friendly now) 2016-06-20 14:32:57 +02:00
baldurk 0afc7ea6c3 Coverity: When possible, pass big params by const ref instead of by val 2016-06-09 13:56:52 -07:00
baldurk 8538e045cb Need to downcast from BGRA formats 2016-06-08 15:30:38 -07:00
baldurk 0105967ebc Don't initialise whole pass worth of postVS buffers unless we need it 2016-06-08 14:00:34 -07:00
baldurk cb0c8ca620 Don't try to pick vertices if there's no input buffer specified 2016-06-08 11:04:10 -07:00
baldurk 947f7decb2 Add 'show all instances' mode, and make colours consistent. Closes #248 2016-06-03 17:34:26 +02:00
baldurk e0d664f1b3 Fix a case where selecting an instance would break viewing other draws
* The UI would prevent you from selecting too high an instance for a
  draw, but if you selected a non-zero index and then selected a non-
  instanced draw, it would try and fail to render instance N.
2016-06-03 17:28:43 +02:00
baldurk 094e79dee2 Greatly speed up 'attach to running instance' dialog in the 99% case
* 99% of the time, you'll only have localhost and the application will
  be running on the first ident checked which will return a valid socket
  almost immediately.
* Instead of continuing to search through each valid port before
  returning valid data, we change the enumerate function to just find
  the next valid port and return - so we can update the UI as soon as
  we have the first result.
2016-06-01 11:31:57 +02:00
baldurk ab84b84ba4 Add bullet-proofing to GetTextureData/GetBufferData
* So that it won't crash on invalid input but will just return empty
  data.
2016-06-01 10:44:44 +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 4b7e068703 Rename 'create debug device' capture option to 'API validation'
* More appropriate for non-D3D11 APIs and will cause less confusion.
2016-05-17 21:16:17 +02:00
baldurk 91afc2b391 Add a way for UI to pass arbitrary settings strings into the core module 2016-05-10 22:35:48 +02:00
baldurk 90e96e2fd6 Slight increase in tolerance on overdraw ramp decoding 2016-04-24 20:01:47 +02:00
baldurk 88c9c52318 Fixes for crashes and output bugs saving two-component textures 2016-04-17 18:51:38 +02:00
baldurk 9a17b30a0e Fix jpg saving for very small image dimensions 2016-04-17 18:49:40 +02:00
Cory Bloor 0093fdb31d Add GetVersionString to RenderDoc API 2016-04-17 04:48:15 -06:00
Cory Bloor 068e38f8f3 Fix memory leak in thumbnail size check 2016-04-17 04:43:54 -06:00
baldurk f30a1a6dc3 Change vector to rdctype::array so size is consistent across compilers 2016-04-15 18:32:49 +02:00