RetroArch icon indicating copy to clipboard operation
RetroArch copied to clipboard

[Vulkan video] Duplicated frames cause a black screen

Open vanfanel opened this issue 3 years ago • 5 comments

Description

Sending duplicated frames from the cores cause a black screen. When using the Vulkan driver in RetroArch, frame duping can result in a black screen until the next input that causes a new frame to be rendered. This happens when RetroArch does a video driver reinit. For example when switching RetroArch from fullscreen to windowed or vice versa. Or when the core requests a reinit through RETRO_ENVIRONMENT_SET_SYSTEM_AV_INFO.

Expected behavior

Sending duplicate frames with the Vulkan driver, or doing a video driver reinit, Retroarch should show the content on screen, just like with the GL driver.

Actual behavior

Sending duplicate frames with the Vulkan driver, or doing a video driver reinit, Retroarch shows a black screen until a new frame is sent.

Steps to reproduce the bug

Happens on both beetle-psx and dosbox-core when frame-dupping is enable. So, for example on the dosbox-core core with the Vulkan driver set as video driver:

  1. Load the dosbox-core core
  2. Load SuperFrog
  3. You will be on a black screen until you enter a value or press a key that causes a new different frame to be sent.

Bisect Results

In theory it has always happened with the Vulkan driver. Does not happen with the GL driver.

Version/Commit

You can find this information under Information/System Information

  • RetroArch: 1.9.14 stable, and also current GIT code.

Environment information

  • OS: GNU/Linux (X11, KMSDRM, Wayland)
  • Compiler: gcc version 10.2.1 (Debian 10.2.1-6)

Related bugs

https://github.com/realnc/dosbox-core/issues/36

vanfanel avatar Jan 05 '22 23:01 vanfanel

@realnc Is this still an issue or not? If so, how do we reproduce this?

LibretroAdmin avatar Sep 02 '22 00:09 LibretroAdmin

@realnc Is this still an issue or not? If so, how do we reproduce this?

@LibretroAdmin It's still an issue. Also, it happens with glcore as well, but only when toggling fullscreen on/off.

To reproduce, just run Superfrog. The screen will flash-in once and then the image will go black with vulkan until you press a key. With glcore, it will show normally, but will go black if you toggle fullscreen mode in RA.

realnc avatar Sep 14 '22 16:09 realnc

PRs welcome for this. I tried asking @Themaister but have not gotten a response.

LibretroAdmin avatar Oct 04 '22 17:10 LibretroAdmin

@vanfanel Is it still an issue or can we close this issue ? Thank you.

gouchi avatar Aug 13 '24 14:08 gouchi

@vanfanel Is it still an issue or can we close this issue ? Thank you.

This is still an issue, yes.

vanfanel avatar Aug 16 '24 11:08 vanfanel