* This could lead to a crash at least on vulkan, where the memcpy reads
off the end of the data. On GL this could mean the index data doesn't
get read back.
* I got a crash report that seemed to have a file become invalid or
unavailable in between it being opened to determine the driver (which
already handles I/O failures) and the driver opening it. This check
just makes that more robust
The option launches a batch file that starts the apk in remoteserver mode,
as well as taking care of port forwarding.
Also have a batch file for manually starting and capturing an APK by its
package name. They are both copied to the TargetDir as a PostBuildEvent.
- Added the ability to select an external SPIR-V disassembler and to use
it for editing any of the shaders in the pipeline.
Tested with SPIRV-Cross (https://github.com/KhronosGroup/SPIRV-Cross)
Fragment, Vertex, Geometry, Compute shaders
* To continue the workaround for QTBUG-56382 we need to run our own
manual message loop for dialogs as well. We only use a couple so we
can just run it through a handful of thin wrappers.
* See https://bugreports.qt.io/browse/QTBUG-56382 for more details -
creating DXGI swapchains adds a windows hook, and enough windows hooks
forces out Qt's internal hook which it relies upon for proper event
processing.
* Side note, it's incredibly stupid that the only way for me to iterate
on this is to push public commits, without doing something awkward
like forking to a separate repo just to test.
* This is buggy - the UI seems to hang at random until you switch away
and back, some event I guess is stalling the queue somehow but it's
still pumping events.
* It seems due to deficiencies in Qt's design, there will be a
substantial need for these small custom subclasses just to add basic
functionality that should have been present in the original. So we'll
adopt a naming scheme of QFooBar -> RDFooBar for this 'almost the
same widget' type subclassing, compared to more custom/changed ones.