Commit Graph

8404 Commits

Author SHA1 Message Date
baldurk 1aa1abdf45 Don't lose base thumbnail when converting from zip.xml 2019-01-03 12:22:29 +00:00
baldurk f543f02998 Check RDC export/import in all simple tri tests, but *only* in those 2019-01-03 12:22:29 +00:00
baldurk daed903b64 Add support for wglShareLists. Closes #1224
* We can't feasibly support calling wglShareLists after wglMakeCurrent because
  we must do work and create objects in wglMakeCurrent. If this situation
  happens we pretend that wglShareLists failed and print an error.
2019-01-03 12:22:29 +00:00
baldurk 2237c241ff Fix incorrectly named methods in ResourceFormat
* We try to maintain at least an internally consistent naming scheme for the
  python/public interface, even if it doesn't match python naming schemes.
2019-01-03 12:22:29 +00:00
baldurk c154a16442 Add better logging around D3D11 replay device creation 2019-01-03 12:22:28 +00:00
baldurk 5280b6628a Fix D3D11 drivertype fallback to WARP/REFERENCE not properly applying 2019-01-03 12:22:28 +00:00
baldurk 2e18b09bc9 Fix typo that saved D3D12 indexed draw indirect index offset incorrectly 2019-01-03 12:22:28 +00:00
baldurk 09207c5de0 Set structured serialisers as streaming mode
* This means that checks for array sizes won't check against an empty input
  buffer and fail.
2019-01-03 12:22:28 +00:00
baldurk 7860bee811 Make sure to fail if errors are found in python interface method naming 2019-01-03 12:22:28 +00:00
baldurk 6dd67d0069 Fix argument string for buffer views in D3D12 pipeline view 2019-01-03 12:22:28 +00:00
baldurk 96075bc575 Remove unwanted rowspan on D3D12 sample mask
* This messed up the grid outlines as it included another extra row that it
  shouldn't have.
2019-01-03 12:22:27 +00:00
Jake Turner d02280ea5e tests: increase milliseconds2 test maximum to 1580
OSX unit tests on travis failing with milliseconds2 = 1575.065805
2019-01-03 12:21:58 +00:00
Jake Turner 8105ddb5ab osx: for cmake set library output to be lib folder
On Apple only set  CMAKE_LIBRARY_OUTPUT_DIRECTORY to be “lib” folder instead of “bin” folder
Fixes osx problem when launching renderdoccmd not being able to find librenderdoc.dylib
RPATH is set to be "@executable_path/../lib" which matches where qrenderdoc.app copies the renderdoc library to

qrenderdoc: set library search folder “-L” to be CMAKE_LIBRARY_OUTPUT_DIRECTORY instead of CMAKE_RUNTIME_OUTPUT_DIRECTORY
2019-01-03 12:21:58 +00:00
Jake Turner 8fdf3ac245 osx: Fix cmake warning about policy CMP0068
``RPATH`` settings on macOS do not affect ``install_name``

Set BUILD_WITH_INSTALL_NAME_DIR to 1 to obtain old behaviour for before cmake 3.9
2019-01-03 12:21:58 +00:00
Jake Turner e9d70d7eec osx: enable unit tests for OSX travis building
force any command failures to call “exit” to make the script fail if a unit test fails
2019-01-03 12:21:58 +00:00
azhirnov 5d08efc16b Fix some untyped member serialisation 2018-12-29 15:25:59 +00:00
Alex Smith 5444c4b3ab Treat Op(Member)DecorateStringGOOGLE as part of the annotation section
Fixes a crash in the driver on RADV when compiling the PostVS shader
for a shader that has these opcodes. The incorrect section boundaries
was causing BuiltIn decorations to not be stripped.
2018-12-29 14:00:34 +00:00
Alex Smith 9db805a1cd Add OpName before OpModuleProcessed
The SPIR-V spec requires OpName comes before any OpModuleProcessed.
Fixes a SPIR-V validation error on the generated PostVS shader if the
original shader has any OpModuleProcessed.
2018-12-29 14:00:34 +00:00
Jake Turner 2ec0096bc2 osx: Fix FileIO::GetLibraryFilename
Was always returning empty path. Fixes failing test and error message when launching an OSX capture from qrenderdoc
2018-12-22 09:52:26 +00:00
Jake Turner 0d31fa28ee Tests: added test for FileIO::GetLibraryFilename
Verify it does not return an empty path
2018-12-22 09:52:26 +00:00
Jake Turner f0a50cf4cc osx: Implement Wide2UTF8
Copied from linux implementation using iconv API
Added if guard before calling iconv_close() to fix

> ./build/bin/renderdoccmd test
renderdoccmd(77013,0x11660e5c0) malloc: *** error for object 0xffffffffffffffff: pointer being freed was not allocated
renderdoccmd(77013,0x11660e5c0) malloc: *** set a breakpoint in malloc_error_break to debug
Abort trap: 6
2018-12-22 09:52:12 +00:00
baldurk 3c319024e8 Remove useless spammy log print of progress. 2018-12-21 12:38:29 +00:00
baldurk b006ea81a6 Handle all logical sections in SPIRVEditor 2018-12-21 12:38:29 +00:00
baldurk 2af0c8c9f8 Automatically strip nops when destroying SPIRVEditor 2018-12-21 12:38:29 +00:00
baldurk b33e5e018a Add tracking of which extensions are in the module 2018-12-21 12:38:28 +00:00
baldurk 36a4de8170 Don't show two empty rows for a completely empty combined image/sampler 2018-12-21 12:38:28 +00:00
baldurk 64fc592341 Fix index used to look up writes when applying initial state descriptors 2018-12-21 12:38:28 +00:00
baldurk 68c5ffe5ee Don't apply quick check-and-skip for array descriptor slots
* Just because the first element in the array isn't valid doesn't mean there
  aren't elements later that are valid which we should update.
2018-12-21 12:38:28 +00:00
baldurk 7498c53a37 Verify thread access to ReplayController to ReplayOutput 2018-12-21 12:38:28 +00:00
baldurk 1617b4618d Fix crash on GL after saving a texture to disk, wrong thread access 2018-12-21 12:38:28 +00:00
tabi.katalin e59fc15369 Get the right port number form the proc file
On Linux, the proc file (/proc/<pid>/net/tcp) contains not only the ports for the given process, as this is the same as the /proc/net/tcp file.
We can obtain the right port by the inode number which is also in the proc file and with the file descriptor of the process (/proc/<pid>/fd).
2018-12-20 13:32:40 +00:00
baldurk 8934da6dc3 When re-trying a frame capture add context configuration. Closes #1215
* We need this to properly orient FBO 0 for the active context.
2018-12-19 17:15:39 +00:00
Danylo Piliaiev 11fa2294d7 Display conditional rendering state for compute shader
If conditional rendering is enabled its state is always
displayed in both 'Rasterizer' and 'CS' states.

Signed-off-by: Danylo Piliaiev <danylo.piliaiev@globallogic.com>
2018-12-19 16:20:21 +00:00
baldurk c16371d779 Add alignment helpers 2018-12-19 15:57:13 +00:00
baldurk b08fb8c9b5 Allow specifying the pNext struct passed to vkCreateDevice 2018-12-19 15:57:12 +00:00
baldurk ad48f438b2 Update test demos project's vulkan headers to match main ones
* These should be updated in lockstep from here on.
2018-12-19 15:57:12 +00:00
baldurk 11237585f2 Add warning if some required extensions are missing 2018-12-19 15:57:12 +00:00
baldurk 96b881dbd7 Don't keep fetching messages if the remote server has disconnected 2018-12-19 15:57:06 +00:00
baldurk 9ac07f806b On android only call eglTerminate after eglInitialize. Closes #1211 2018-12-19 09:58:15 +00:00
baldurk ec6406c8ff Check next step is in bounds for states before checking conditions 2018-12-18 17:38:49 +00:00
baldurk 19064a0f05 Force on DXGI_USAGE_RENDER_TARGET_OUTPUT to swapchain backbuffers
* We need this to render our overlay. This should always be valid to specify,
  it's not mutually exclusive with any other usage.
2018-12-18 17:25:14 +00:00
baldurk ddb7aeef92 If a SPIR-V type has been replaced due to aliasing don't set custom name
* If we have e.g. Input Float* and Output Float* when we patch they will both
  become Private Float* and we collapse the types together. When that happens,
  don't rename names for the losing type, just remove names.
2018-12-18 16:46:55 +00:00
baldurk 5cfe6c7623 Give each breakpad server a unique pipe
* Speculative fix for a hang observed only on official builds when launching a
  32-bit program from a 64-bit version of RenderDoc.
2018-12-17 19:50:37 +00:00
baldurk ec194327be Revert mistaken change to compile Array <-> MSAA copy shaders as SM4
* This was an experiment that accidentally got included, these shaders are only
  compatible with SM5 due to dynamic sample indexing and use of SV_SampleIndex
2018-12-17 18:14:09 +00:00
baldurk ef3aef17ff Add missing header on linux to fix compilation 2018-12-17 18:03:54 +00:00
baldurk d1f25eea0f Add extended thumbnail handling into XML codec 2018-12-17 17:10:35 +00:00
baldurk 5f96644d08 Add support for global uniforms in SPIR-V and non-bound textures.
* This isn't relevant for Vulkan, but in GL it's valid to not specify a binding
  and fetch it at runtime (and even if a binding is specified, it's not
  immutable and can be changed).
* Similarly GL allows bare uniforms that aren't in a buffer, which we handle in
  the same way by wrapping them into a $Globals UBO.
2018-12-17 17:10:35 +00:00
baldurk bb9ff1ccb7 Adjust GL SPIR-V shader test demo to do opengl-unique things
* E.g. not specify a binding and let that be done at runtime, or global
  variables not in constant buffers.
2018-12-17 17:10:35 +00:00
baldurk b08d277b61 Apply clang-format to embedded internal shader source
* It gets a couple of things less than ideal, mostly glsl block names being on
  the next line, but otherwise it's readable and stops mixed tabs/spaces which
  had snuck in without checks.
2018-12-17 17:10:34 +00:00
baldurk 6b40a82a80 marker/pass boundary calls should not have drawcall IDs. 2018-12-17 17:10:34 +00:00