* Some drivers struggle with one command buffer per resource and that's
certainly inefficient, so batching work together (without going too far) keeps
things working better.
* If an object has enoug children, the lazy generator can take multiple seconds
on e.g. android to fully populate. This is a long enough stall to cause the
host side to timeout while waiting for the next piece of data. Instead of
populating everything up front before starting serialising, we now populate as
we go for each child, so that there's a steadier stream of data and avoid any
timeouts.
* On all APIs when depth is disabled the writes are skipped as well. Explicitly
set the function and write state to say that they are disabled.
* This also papers over a weirdness on D3D11 which has confused a couple of
people, where the retrieved desc with GetDesc() on a state object can be
different to the one it was created with when you set ignored parameters -
like the depth function with depth disabled.
Hardcoded to Code, Styles, Widgets, Windows *.h*, *.c*, *.m*
These files are not built by Xcode.
They are in the Xcode project to support browsing qrenderdoc source code.
Capture the PATH variable at cmake invoke time and store in the cache.
Use the captured PATH variable for the make based build targets custom_swig and QRenderDoc.
This fixes the problem on Apple Silicon that the Xcode PATH does not include the default homebrew paths (/opt/homebrew/bin /opt/homebrew/sbin)
Restrict the schemes to match the configuration on the cmake command line
Disable Debug Document Versioning
Specify the executable path for build-qrenderdoc target
Building via Xcode does not include "stdc++" by default (probably a difference between cland and clang++).
Building via Xcode puts the static library "renderdoc_libentry" into a different folder than the shared library "renderdoc"
Pass the full path to the static library "renderdoc_libentry" on the link line.
For Xcode set the output directory to be the same for all configurations
By default Xcode puts binary and library outputs in a different folder per configuration
Support for Xcode project generation.
Distinguish object file between .cpp & .mm versions.
Xcode project build did not work when had the same source file with .cpp and .mm extensions ie. vk_apple.cpp & vk_apple.mm
The makefile generator explicitly distinguishes the targets ie. vk_apple.cpp.o & vk_apple.mm.o
Support for Xcode project generation.
Distinguish object file between .cpp & .mm versions.
Xcode project build did not work when had the same source file with .cpp and .mm extensions ie. cgl_platform.cpp & cgl_platform.mm
The makefile generator explicitly distinguishes the targets ie. cgl_platform.cpp.o & cgl_platform.mm.o
This includes updated header files, which needed minor local tweaking to
remove an intermediate directory from the include path, and to disable
the <vulkan/vulkan.h> header from being included in gpu_perf_api_vk.h.
All entrypoints and some datatypes were renamed in the latest version,
but functionality remains the same.
Includes support for new AMD Radeon RX 6000 Series graphics cards.
* This is a significant optimisation, otherwise Qt will iterate over every event
and get its size, which can be expensive with the events being rich text
strings.
* This option (in spite of large warnings) continues to be a pitfall for new and
experienced users alike, trying to use process injection without good reason
and getting into trouble when it breaks.