* Newer nvenc seems to check that this device matches resource->GetDevice() for
passed in resources which is reasonable to want, so we unwrap it on the way
in.
* The first time a draw is selected bindless feedback runs, ensure the clear-
before-draw overlay works even then. This is a little bit of a hack but it
tests for a known issue.
* These canary values must be propagated correctly to derived pipelines (made
with patched shaders etc) or else the shaders disable themselves/misbehave,
which invalidates the test. That way if the test passes we know the
specialization constants were properly propagated.
* This is possible on D3D11 but only with certain cap bits, it's simpler to test
on D3D12 and the DXBC debugger will go through the same path for both.
* If the current state of a temporary ImageState is unknown in a renderpass
transition mid-command buffer that means it's a subresource which isn't
touched and we want to skip barriering it. We *don't* want to barrier from
UNDEFINED and discard.
* However if this is a real ImageState which hasn't been initialised, we do want
to do that. So only opt-in to the skipping behaviour in the case we know this
isn't a 'real' ImageState but a temporary tracker.
* The D3D12SDKLayers needs to match the D3D12Core, so we save both when possible
(the SDKLayers dll might not be loaded during capture but it should be next to
the D3D12Core. On replay if we have one we put it next to the D3D12Core we're
using for replay, and if not we forcibly disable debug otherwise we may crash.
Block-compressed textures with dimensions that are not evenly divisible
by the block size are typically padded internally to align with the
block size. load_dds_from_file() was previously corrected to account for
this alignment when calculating the number of rows of blocks to read
from a DDS file, but the fix was not applied to write_dds_to_file(),
resulting in missing rows of texels or loading failures when attempting
to open a DDS file generated by RenderDoc from a texture whose
dimensions are not a multiple of four.