Many counters are exposed in multiple queries. By hiding that fact,
we are making life harder for users, because they need to find
related counters all around the query tree. Don't do that.
As a side effect this will decrease the number of needed passes if
all selected counters belong to the same query.
* This matches the explicitly documented behaviour for D3D so it likely matches
what GPUs do, and since SPIR-V leaves it undefined it's OK to do what we want.
This does mean that there might be false negatives of cases where the GPU gets
bad results and the simulation 'works', but this is preferable and less likely
than false positives of the simulation going (legally) wrong when the GPU
result is correct.
* We need to copy the external-facing m_RenderState into the partial command
buffer's state for partial replay, in case it was modified externally.
* Also when accessing the render state inside a drawcall callback we need to use
the command buffer's local state, not m_RenderState which isn't updated until
the replay completes.
* Due to standards nonsense the availability of isinf/isnan in C++ is quite
complex and varies a lot between compilers. Trying to access them reliably is
quite brittle and they're easy to implement with bit-inspection of float
patterns, so we do that instead.
* This helps catches cases where a discarded image is accidentally used and in
many cases may still have valid data. Particularly on Vulkan this is relevant
for DONT_CARE renderpass load and store ops.
* This is a leftover artifact from before we had general extended type support
and double was the only non-32 bit type we handled. Now we support most type
formats so doubles are just CompType::Float with 8 byte width
Updated permissions for the renderdoccmd app based on which version of
android the app is running on
**WRITE_EXTERNAL_STORAGE for <R
**MANAGE_EXTERNAL_STORAGE for >=R
Updated the Java portion of renderdoccmd to check/request the correct
permission based on android version
Changed the file path for renderdoc files on Android based on the
version of Android the connected device is running
**/sdcard/Android/data/$PACKAGE_NAME for <R
**/sdcard/Android/media/$PACKAGE_NAME for >=R
* We can still highlight them as empty the same as we do for insufficiently
sized constant buffers, but we should display the proper resource contents.