* glRenderbufferStorageMultisample and glRenderbufferStorageMultisampleEXT
should be interchangeable, with the only difference being the EXT version
specifies that tile resolves may happen and MSAA data won't be preserved.
* When aliasing the functions RenderDoc will call the core version if available
even if the application called into the EXT, assuming them to be
interchangeable (and in this case the core function is a superset of
functionality). Unfortunately on ARM's driver attachments of different types
are not handled properly and FBOs can fail to create.
* The only available workaround for this is to copy-paste the function
implementation and keep them separate, and assume that the application does
the right thing and ends up with compatible attachments. The app could easily
break in the same way, but at least then RenderDoc is not forcing a bug to be
hit.
* Running 'adb root' will cause the device to disconnect, so doing it late when
we're selecting an app to debug and want to see if we have debug access means
we'll kill our server connection the first time. Instead doing it at enumerate
time means the device will already be in root mode.
When selecting a draw with a tessellation evaluation shader using
layout(quads), RenderDoc would emit an "Unexpected output topology"
error.
Additional changes:
* Fixes a typo in the VK_EXT_transform_feedback name in various debug
prints.
* Renames the "GS Out" 3D View tab in the Mesh Viewer to "GS/DS Out",
to match the corresponding table. This affects all APIs.
* This is completely invalid but better than crashing. This can happen as a
race-condition if the user injects into a running program that's already using
GL on one thread, before we've completed installing our hooks.
- Add VK_STRUCTURE_TYPE_PRESENT_FRAME_TOKEN_GGP as a pNext to
ignore for VkPresentInfoKHR
- Remove RDCASSERT for pPresentInfo->pNext to be null, since it
can be not null, and there is a loop above the assert that checks
the pNext term.
- Disable GL and GLES drivers on GGP
- Add flags to keep symbols in release builds. Adds
minimal debug info that preserves backtraces.
- Disable python modules and qrenderdoc for GGP
* The apk targets api level 21 which is 5.0, so it still won't install on
anything older.
* We pop up a big warning to the user the first time they try and select such a
remote host.
* When needed on windows we convert to/from UTF-8. For most places this is easy
enough, the callstack processing is now moved to store most data as UTF-8 in
the first place.
* We can't emulate true separate shader objects, but we can emulate
glProgramUniform* which we use often, and silently drop attempts to make
programs separable. Then as long as elsewhere we can avoid actually relying on
separable programs.
* This will need to be used in combination with ARB_program_interface_query
emulation, but it's unlikely that that extension is available but
ARB_separate_shader_objects isn't.