Commit Graph

8077 Commits

Author SHA1 Message Date
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
baldurk e0a185655d Emulate ARB_dsa functions that are used where no EXT variant exists 2018-10-17 15:44:17 +01:00
baldurk c45023236a Perform image processing at 32bpp for HDR/EXR/DDS outputs. Closes #1103
* When flattening array slices or remapping to a cube cruciform, we can remap to
  RGBA32 when the output format is itself greater than 8bpp, to ensure we don't
  lose quality before output.
2018-10-17 15:38:53 +01:00
baldurk d06ea5b8a4 Implement texture remapping to RGBA16/RGBA32 for D3D11/D3D12 2018-10-17 12:48:18 +01:00
baldurk bc52dd6c5f Set vertex buffer/attrib offsets to 0xDEADBEEF if they're pointers
* This helps reduce noise of serialising user pointers in the capture
2018-10-17 11:42:49 +01:00
baldurk 7c31f3f171 Don't use glMapBufferRange to read indices, as it may not allow MAP_READ 2018-10-17 11:41:28 +01:00
baldurk 04fb615e3d Fix extension sorting 2018-10-16 17:29:42 +01:00
baldurk b5854f0fec Implement VK_EXT_transform_feedback, and use it for mesh output
* For pipelines using tessellation or containing a geometry shader we use
  transform feedback to fetch the output of the vertex pipeline after these
  stages.
2018-10-16 16:53:03 +01:00
baldurk 4dd74c9290 Fix display of stream-out in D3D pipeline state viewers 2018-10-16 16:26:23 +01:00
baldurk a9f814513b Set groups to Expanding instead of MinimumExpanding 2018-10-16 16:26:23 +01:00
baldurk 1210f1fd42 Add pipestate.h to swig interface dependencies 2018-10-16 16:26:22 +01:00
baldurk dafefe6492 Only bail on exact match of file against shell processes. Closes #1118 2018-10-16 16:26:22 +01:00
baldurk f31c61f714 Don't try to delete from non-existant TLS list 2018-10-16 16:26:22 +01:00
baldurk b9e92d950b Allow VK_GOOGLE SPIR-V semantic extensions, and VK_EXT_pci_bus_info
* Both require no work to support
2018-10-16 16:25:57 +01:00
baldurk adc2675e3e Update vulkan headers to 1.1.88 2018-10-16 16:25:57 +01:00
baldurk 69287da9ac Handle inserting from rdcarray into itself
* This self-insertion has the same kind of problem as overlapping ranges in
  memcpy, the act of inserting items can affect the input range by shifting
  things around. For inserting a single object we just copy it, for inserting a
  range we duplicate the whole array and then do the insert from the old range
  (and destruct it).
* Clearly this is not the most efficient implementation, a better solution would
  be to append onto the existing array (potentially not even reallocating then)
  and doing a rotate/shift in place.
2018-10-15 17:30:34 +01:00
baldurk 9a3c316fee Add keepalive packets if necessary around slow remote server calls 2018-10-12 19:37:03 +01:00
baldurk e511ae1e3e Add debug logging around replay proxy, and more error/integrity checking 2018-10-12 18:29:11 +01:00
baldurk e6d2f13a0d Handle TIMEDOUT the same as WOULDBLOCK when doing blocking recv/send 2018-10-12 17:30:18 +01:00
baldurk abd8c8e640 Add EPIPE error message 2018-10-12 16:30:25 +01:00
baldurk 005dcc693c Fix incorrect comment on VK_MVK_moltenvk extension enable 2018-10-12 15:27:05 +01:00
baldurk 48af22530c Fixes for flattened single-draw indirect draws 2018-10-12 13:04:57 +01:00
baldurk 648d261185 Add FREE_DESCRIPTOR_SET_BIT when creating pool that we'll free from 2018-10-12 13:00:28 +01:00
baldurk 3766c43ee5 Fix path conversion to windows paths when preparing symbols 2018-10-12 11:25:45 +01:00
baldurk 13e03b79b5 Add typename for template parameter 2018-10-11 19:45:57 +01:00
baldurk 9872b87e7b Remove extra \ that snuck into code 2018-10-11 19:40:23 +01:00
baldurk 03cddbf283 Add support for VK_KHR_create_renderpass2 2018-10-11 19:18:36 +01:00
baldurk d8dc4d95ec Add support for VK_KHR_shared_presentable_image 2018-10-11 19:18:35 +01:00