dolphin-emulator/Source/Core
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
..
AudioCommon WaveFile: Fix size check 2022-10-22 11:44:38 -07:00
Common JitArm64: Reimplement Force25BitPrecision 2022-10-22 10:03:52 +02:00
Core GraphicsSettings: Remove unused FreelookControlType enum forward declaration 2022-10-26 16:23:13 -07:00
DiscIO Show vWii System Menu version in Menu Bar 2022-10-22 13:36:55 +02:00
DolphinNoGUI Merge pull request #10751 from Zopolis4/manifesto 2022-09-08 20:36:28 +02:00
DolphinQt Merge pull request #11150 from jordan-woyak/all-devices-less-confusing 2022-10-29 00:53:19 +02:00
DolphinTool Merge pull request #10751 from Zopolis4/manifesto 2022-09-08 20:36:28 +02:00
InputCommon Merge pull request #10979 from tellowkrinkle/QuartzWindowSpeed 2022-10-22 04:55:12 -04:00
MacUpdater WinUpdater: Check OS and VC++ Redist versions. 2022-09-20 15:57:50 -07:00
UICommon WinUpdater: Defer modifying any files until Updater.exe 2022-10-21 19:14:00 -07:00
UpdaterCommon Updater: clarify a string 2022-10-23 01:47:02 -07:00
VideoBackends VideoBackends:D3D12: Defer binding framebuffer in SetAndDiscardFramebuffer 2022-10-29 23:41:32 +02:00
VideoCommon VertexLoader: Remove "too many initializer values" workaround functions 2022-10-25 15:29:09 -07:00
WinUpdater WinUpdater: Check OS and VC++ Redist versions. 2022-09-20 15:57:50 -07:00
CMakeLists.txt
DolphinLib.ARM64.props
DolphinLib.props Merge pull request #11072 from SketchMaster2001/wiiconnect24 2022-10-16 04:31:28 +02:00
DolphinLib.vcxproj WinUpdater: Check OS and VC++ Redist versions. 2022-09-20 15:57:50 -07:00
DolphinLib.vcxproj.user
DolphinLib.x64.props