Commit Graph

25 Commits

Author SHA1 Message Date
baldurk 512906c104 Export GLX functions we don't intercept as pass-through functions 2016-11-19 15:13:55 +01:00
baldurk 6518d8bdf8 Don't rely on data files being exported from .so, add explicit function 2016-09-12 17:40:28 +02:00
baldurk d3e4790ee8 Add command to renderdoccmd that will handle vulkan layer registration
* This is similar to the button on the capture dialog of the windows UI,
  except on linux the situation is a bit more complex as layers can be
  registered in two different system locations (one for distro packages
  and one for non-distro stuff), as well as in $HOME.
* On linux we make sure the json always contains an absolute path so we
  can tell from any given build whether or not a json is our own or not.
* By default we now install the json to /etc since /usr is reserved for
  proper distro packages, and shouldn't be written to by 'make install'.
  There's a CMake variable for overriding this for anyone who wants to
  make install into a custom folder (maybe for packaging).
2016-08-26 13:35:31 +02:00
baldurk 90604c6d9c Print custom lines of API support on the version string of renderdoccmd
* An easy way to check what support is compiled into this binary.
2016-08-25 21:07:40 +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 f8b3fd3e1e Update renderdoccmd for new remote server code, add daemonise for server 2016-08-19 17:26:08 +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 e81895b060 [Coverity] Remove use of rand() now SetFrameEvent takes 'bool force'
* I honestly can't figure out how to tell Coverity that rand() use isn't
  a security flaw, but it's on longer needed so...
2016-07-20 16:01:48 +02:00
baldurk 95e00d58bf Add SIGINT signal handler on linux to cleanly shutdown replay host 2016-07-13 17:55:47 +02:00
baldurk 99c0177cd9 Remove unused GetUsername() function 2016-07-12 19:39:41 +02:00
baldurk ced8a62af6 Add replay command (with optional remote replay) 2016-07-12 17:39:23 +02:00
baldurk eb9a545104 Move common functions declarations into header 2016-07-12 17:10:42 +02:00
baldurk 5f28b745a2 Format code according to newly added clang-format
_  /)
                 mo / )
                 |/)\)
                  /\_
                  \__|=
                 (    )
                 __)(__
           _____/      \\_____
          |  _     ___   _   ||
          | | \     |   | \  ||
          | |  |    |   |  | ||
          | |_/     |   |_/  ||
          | | \     |   |    ||
          | |  \    |   |    ||
          | |   \. _|_. | .  ||
          |                  ||
          |repository history||
          |                  ||
  *       | *   **    * **   |**      **
   \))ejm97/.,(//,,..,,\||(,,.,\\,.((//
2016-05-22 19:41:53 +02:00
Cory Bloor 8a4e562b39 Update ReplayRenderer_SetFrameEvent on Linux
These signature changes were missed during the removal of multi-frame
support on Linux in 70b99a4412.
2016-04-13 01:48:06 -06:00
baldurk 3e37e1a112 Linux compile fixes 2016-02-22 01:47:57 +01:00
baldurk 2e0ffa7813 Batch update copyright years everywhere 2016-02-07 18:50:45 +01:00
baldurk 290b695a6b Linux compile fixes 2016-02-07 18:49:33 +01:00
baldurk 6eef0e0649 Pass screen index (so you can guess 0), fix Qt to display 2016-02-07 18:38:17 +01:00
baldurk 6a6273e591 Temporarily make renderdoccmd use xcb, as xlib isn't supported by ICD 2016-02-07 18:38:12 +01:00
baldurk ba58a53684 Temporary hack - don't create GLXWindow outside and pass in
* I'll need to see if it's possible to do GL-side replay if I'm just
  passed an xlib Window.
2016-02-07 18:38:07 +01: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 ea9a81e44f Implement DisplayRendererPreview in renderdoccmd for linux 2014-11-16 23:17:44 +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 d7e752f7e9 Fixes for compiling on linux 2014-06-08 11:19:22 +01:00
baldurk 0f080d1f44 Cleaned up renderdoccmd, split out necessary bits to OS-specific files 2014-06-08 11:00:41 +01:00