Commit Graph

8104 Commits

Author SHA1 Message Date
baldurk bc274b5b51 Only consider stream-out active on D3D if there are buffers bound 2018-10-25 10:49:56 +01:00
baldurk e8272626b2 Add missing mac include 2018-10-24 19:05:10 +01:00
baldurk 7e41b7913a Fix macOS build 2018-10-24 18:42:04 +01:00
baldurk 4bec1b8d32 Handle push descriptors correctly when copying descriptors in postvs 2018-10-24 18:08:12 +01:00
baldurk afb67f9035 Use library location not binary location to locate relative paths
* This means that things will work successfully even if the 'executable' is
  actually e.g. python3 in a system directory and nowhere related to where the
  renderdoc library is.
2018-10-24 15:57:50 +01:00
baldurk b42931e238 If no ARRAY_BUFFER is bound in glVertexAttrib*Pointer, sanitise pointer
* This ensures we don't serialise a pointer to client memory which is non-
  deterministic. The value isn't used, we will readback the actual data at draw
  time and replace with client-memory buffer updates.
2018-10-24 15:40:41 +01:00
baldurk 67ba5f3ed1 Split extensions interface into separate header, add dialog box helpers 2018-10-24 12:22:54 +01:00
baldurk 73ed82636a Add sorting to unsupported GL hook printing so that output is stable 2018-10-24 11:19:25 +01:00
baldurk c0007374d2 Don't declare CONCURRENT buffer for 1 queue family. Closes #1135 2018-10-24 11:08:26 +01:00
baldurk 609b447855 Check that when building for android that Java >= 1.8 is in the PATH
* This is independent of what JAVA_HOME points to, because some of the android
  tools just run 'java' without checking it.
2018-10-24 10:29:52 +01:00
baldurk 0a21448114 Rename ExtensionMetadata members to match python naming scheme 2018-10-23 19:32:10 +01:00
baldurk e437919e78 Linux compile fixes 2018-10-23 19:11:22 +01:00
baldurk fd6add235f Add missing default: case in switch 2018-10-23 19:05:29 +01:00
baldurk 1720d321e5 Set general global handle for extension registration work
* When calling the register() function there is no frame or globals, so we need
  to set an internal handle external to that.
* This means functions that get wrapped know that there's a global handler for
  exceptions, which just prints to the log. Otherwise they think they're running
  synchronously and write to an invalid exception handling object.
2018-10-23 15:36:35 +01:00
baldurk 8447e43e78 Fix panel menus 2018-10-23 15:15:39 +01:00
baldurk 6388bf1c77 Add RGP plugin DLL to installer manifest 2018-10-23 14:23:12 +01:00
baldurk fa99ca9246 Document python extensions API 2018-10-23 14:23:12 +01:00
baldurk 94dfb9890b Allow registering window, panel and context menu items with callbacks 2018-10-23 14:23:12 +01:00
baldurk 67fc971cd9 Add a dummy pass-through conversion for already converted python objects 2018-10-23 14:23:12 +01:00
baldurk 789c3b9333 Add plugin icon 2018-10-23 14:23:11 +01:00
baldurk dd3a352408 Add registration and loading of extensions through a management window 2018-10-23 14:23:11 +01:00
baldurk 2dd293d691 Add the ability to load/reload global python extensions 2018-10-23 14:23:11 +01:00
baldurk c0570d5be5 Remove reference to usedCount/elems in rdcpair natvis 2018-10-23 14:23:11 +01:00
baldurk 07fa9a4a94 Add padding next to check indicators in item views for RDStyle 2018-10-23 14:23:11 +01:00
baldurk 554f6dc9c2 Add natvis file for python objects 2018-10-23 14:23:10 +01:00
baldurk d84479463d Ensure we leave enough room in submenu rects for the arrow 2018-10-23 14:23:10 +01:00
baldurk 0cd0dce704 Don't overload Replay() return type with concrete ReplayManager 2018-10-23 14:23:10 +01:00
baldurk 9e6a5e692e Keep a reference to python function object in wrapped lambda
* This will rarely be relevant, but it ensures if the function is decref'd and
  the lambda is still alive, that we keep the python object alive until we are
  done with it. The primary case for this is persistent callbacks where the
  module is then reloaded.
2018-10-23 14:23:10 +01:00
baldurk 52c0a806c3 Remove glsl.xml and hlsl.xml that are no longer used 2018-10-23 14:23:10 +01:00
baldurk a91b2e2201 If eglGetProcAddress fails, try getting GLES symbols from GLES libraries 2018-10-23 14:23:10 +01:00
baldurk ae474fa8a6 Skip x86 Release instead of x86 Development, improve appveyor build time 2018-10-23 14:23:09 +01:00
baldurk fa6b5c5d09 Magically fix travis OSX compile
* Probably there was a trailing non-zero exit code that's not actually fatal,
  from homebrew commands. The echo hides that.
2018-10-23 14:23:09 +01:00
Lionel Landwerlin 830588a24e Fix warning on setting uniform for image
When selecting "Quad Overdraw (Pass)" from the texture viewer, I get this warning :

Log     - Got a Debug message from GL_DEBUG_SOURCE_API, type GL_DEBUG_TYPE_ERROR, ID 81, severity GL_DEBUG_SEVERITY_HIGH:
'GL_INVALID_OPERATION in glUniform1("overdrawImage"@12 is image, not uint)'
2018-10-23 14:22:55 +01:00
Brett Lawson 71da697812 Fix ExecutionMode's crashing drivers with compute based mesh output.
The OpExecutionMode entries were being left in place, but pointing
to functions which are no longer entry points.  This caused the GPU
driver to crash (probably trying to look it up).
2018-10-23 14:22:41 +01:00
Brett Lawson 9548e6ecba Added missing tracking for patching.
This caused a crash in development builds due to the
assertion immediately afterwards failing.
2018-10-23 14:22:41 +01:00
Brett Lawson 72874e21d3 Fixed renderdoc crash due to bindings which are not tightly packed
In the case where bindings are not tightly packed 1:1 with the
attributes, the bindings weren't being resolved first.
2018-10-23 14:22:41 +01:00
Lionel Landwerlin 6d95122189 Do not include Intel counters in the generic ones
At this point we don't have Intel GL counters. But the current logic
assumes there is only AMD ones (and that if it's not AMD's, it must be
the generic ones).
2018-10-23 14:22:25 +01:00
Lionel Landwerlin 26f9fc5c61 Fix GL shader insertion
A missing \n was triggering a compile error for example :

 #extension GL_ARB_shader_storage_buffer_object : require#define SHADER_RESTYPE 1
 #define UINT_TEX 0
2018-10-23 14:22:25 +01:00
baldurk ce213c8f43 Add some missing items into the qrenderdoc python docs index 2018-10-18 19:38:04 +01:00
baldurk 58de3fa8a5 Walk stackframe to find _renderdoc_internal
* When calling functions in modules, the globals are namespaced to the module
2018-10-18 19:36:21 +01:00
baldurk 21a7584c40 Don't import built-in renderdoc modules with prefixed underscores
* This prevents any modules loaded from doing 'import renderdoc' and having it
  work as expected.
2018-10-18 19:16:25 +01:00
baldurk 127c61fc8e Handle miscompiled SPIR-V
* Someone encountered miscompiled SPIR-V such that 1.1, 2.2 etc were compiled to
  1.0, 2.0. I couldn't reproduce it and I don't know how glslang would
  miscompile, but this workaround is at least safe to apply.
2018-10-18 17:13:10 +01:00
baldurk ea9bb452a3 Fix link to interceptor-lib README in compile instructions 2018-10-18 11:07:31 +01:00
baldurk cc254a56eb Adjust verbosity of replay proxy log statements 2018-10-17 17:56:06 +01:00
baldurk f712944c31 Don't look up invalid instruction on final shader debug step 2018-10-17 17:34:38 +01:00
baldurk 8da2a0764d Remove unused debug code that can index off the end of a vector 2018-10-17 17:21:49 +01:00
baldurk eb18d41f9a Detect read-only GL persistent maps & skip intercepting them. Refs #1128 2018-10-17 16:11:21 +01:00
baldurk f3ab6409c0 On desktop GL, emulate glClearDepthf if it's not available 2018-10-17 15:50:52 +01:00
baldurk 2b5a961308 Disable Array2MS compute shader entirely on GLES 2018-10-17 15:50:32 +01:00
baldurk 9280538fea Don't declare GL_ARB_compute_shader extension on GLES 2018-10-17 15:46:26 +01:00