ValveSoftware / Proton

Compatibility tool for Steam Play based on Wine and additional components
Other
24.49k stars 1.07k forks source link

The 2nd page of the medical examination diary: Another story of exciting days of me and my senpai (2243920) #7017

Open kzkz opened 1 year ago

kzkz commented 1 year ago

Compatibility Report

System Information

I confirm:

Symptoms

When running on SteamDeck, the thumbnail image generated when saving on the save screen is black. This does not occur in Windows 10 / 11 environments.

It seems that CopyResource cannot read pixel data from the back buffer in the swap chain created by DXGI_SWAP_EFFECT_SEQUENTIAL after Present.

Normally, after Present, you can select a presentation model (DXGI_SWAP_EFFECT_SEQUENTIAL) that does not discard the data used for Present. But this is not working (i.e. DXGI_SWAP_EFFECT_DISCARD treatment?) It seems to be.

I expect this is a Proton or SteamDeck compatibility issue.

Reproduction

  1. Start the main game.
  2. "Menu"->"Save".
  3. Select any frame to save.

The correct behavior on Windows 10 and 11 is to display a picture of the main game as a thumbnail. On SteamDeck, the picture will be black.

kisak-valve commented 1 year ago

Hello @kzkz, this symptom sounds similar to a quirk I saw with save previews in Myst V. It might be interesting to test how the game behaves with generating a save while having the game's launch options set to PROTON_USE_WINED3D=1 %command%.

kzkz commented 1 year ago

@kisak-valve, Thanks! PROTON_USE_WINED3D=1 %command% option and tried it, and the problem no longer occurs. Is it possible to force this option only when running on SteamDeck? Is the only way to put it in the startup options? Or is there any negative effect with this command when run on Windows 10 / 11?

doitsujin commented 1 year ago

DXVK currently does not implement DXGI_SWAP_EFFECT_SEQUENTIAL any differently than DISCARD. This is the first game I've heard of that uses these present modes, and implementing these in DXVK is not trivial and will come at the cost of extra memory usage.

kzkz commented 1 year ago

Thank you. I understand. I was hoping that Proton would be highly compatible as a compatibility layer, but alas. I hope it will be improved so that only those who want to care about performance can make it DISCARD.

Blisto91 commented 1 year ago

@kzkz This should now be implemented and available on Proton Experimental Bleeding Edge. It will get pulled in to regular Experimental in next update that pulls in dxvk changes.

Blisto91 commented 1 year ago

Sadly this work had to be reverted again. See commit comment for info https://github.com/doitsujin/dxvk/commit/a3fa9c26dce09a4e21935789e4f13bb537b19021

Blisto91 commented 1 month ago

@kzkz This is now implemented again and currently available on the Proton Experimental Bleeding Edge beta branch