dolphin/Source
Robin Kertels a07ee729e5
VideoBackends:D3D12: Defer binding framebuffer in SetAndDiscardFramebuffer
BindFramebuffer depends on the pipeline which might not be set yet.
That's why the framebuffer dirty flag exists in the first place.
I assume BindFramebuffer was called directly here, in order to handle
the texture state transitions necessary for DiscardResource.
The state is tracked anyway, so we can just issue those transitions there
too and defer binding the actual framebuffer.

Fixes an issue in Zelda Twilight Princess with EFB depth peeks.
Dolphin would bind a frame buffer which doesn't have an integer format
descriptor for the color target before binding the new pipeline.
So it would accidentally use the 0 descriptor.

Debug layer error:
D3D12 ERROR: ID3D12CommandList::OMSetRenderTargets:
Specified CPU descriptor handle ptr=0x0000000000000000 does not refer to
a location in a descriptor heap. pRenderTargetDescriptors[0] is the issue.
[ EXECUTION ERROR #646: INVALID_DESCRIPTOR_HANDLE]
2022-10-29 23:41:32 +02:00
..
Android Merge pull request #11079 from t895/system-windows 2022-10-23 21:20:06 +02:00
Core VideoBackends:D3D12: Defer binding framebuffer in SetAndDiscardFramebuffer 2022-10-29 23:41:32 +02:00
DSPSpy DSPSpy: Add st3 BLOOP{,I} tests. 2022-09-30 11:07:41 +00:00
DSPTool Remove most uses of StringFromFormat in favor of fmt 2022-10-12 16:50:47 -07:00
PCH msbuild: refactor to reduce rebuild events 2022-08-02 22:24:22 -07:00
UnitTests VertexLoaderTest: Add NormalAll 2022-09-18 23:33:23 -07:00
VSProps Externals: Add VMA 2022-10-23 02:33:03 +02:00
.clang-format Replace Cpp11 (A Deprecated alias for Latest) in .clang-format 2022-06-22 08:57:32 +10:00
CMakeLists.txt Revert "Android: Don't hold gameFileCache lock during updateAdditionalMetadata" 2022-09-27 19:06:05 +02:00
dolphin-emu.sln replace libpng with libspng 2022-07-25 18:32:16 -07:00