* Because the flow layout adjusts to its available size, we instead set it to
minimum size until it's first laid out. Otherwise it can get unreasonably
sized.
* This prevents SH_ItemView_ArrowKeysNavigateIntoChildren from causing left-move
from an expanded node to jump immediately to its parent instead of collapsing
it when the scrollbar is not leftmost
* In addition for memory allocations for images we prevent the memory from
getting write references propagated to it, as this can cause initial states to
be generated in captures after the first when we convert write references into
dirty states.
* In principle descriptors should be updated less often than they are
referenced, so we used to cache tracking of them at update time to improve the
speed that references can be processed at submit time during capture.
* Some applications though update a *lot* of descriptors *very* often,
effectively writing all their descriptors for a frame every frame. That means
that this background tracking is wasteful and has a big performance impact, so
instead it's a better balance to do more work at submit time during capture.
* We force FetchUAV/FetchSRV to always return something, and it can be empty if
the resource is unbound meaning we get proper OOB behaviour for it. The D3D12
implementation still prints an error message for registers that don't
correspond to the root signature at all, but for D3D11 we silently allow it.
* This likely comes from capturing without tessellation and retrieving 0, and
replaying with tessellation. For this case we don't need to set the number of
vertices at all.
qrenderdoc/Code/CaptureContext.cpp
- Adds GGP windowing system
renderdoc/driver/ihv/amd/amd_counters.cpp
- Enables AMD counters
renderdoc/driver/vulkan/vk_serialise.cpp
- Handling VK_STRUCTURE_TYPE_PRESENT_FRAME_TOKEN_GGP in pNext
for vkQueuePresentKHR
renderdoc/os/posix/ggp/ggp_callstack.cpp
- Check that the file was opened
We need to check the android version running on the device to know
whether or not we need to make the adb install command use the
--force-queryable flag
Devices running Android R/11/SDK 30 are ones which support this flag
Added the --force-queryable flag to the adb install command for
renderdoc Android on devices running Android R/11/SDK 30
A feature being introduced in Android R requires all explicit
interactions between
apps to be declared ahead of time (either via manifest or during adb
install)
The --force-queryable flag during adb install does this, and is what
allows for the
shared objects from renderdoc (in this case the layers) to be
discoverable by
other apps targeting SDK 30+
* When there's only one entry point it can be useful to see available but unused
bindings or I/O parameters. When multiple entry points are present we cannot
do that because we will see bindings or I/O for other entry points.
* This means if there's a large view array, selecting between draws with the
same root signature doesn't free & reallocate the array, it can re-use the
existing memory.