protonscr

[d3d9] Flickering Issues with KiriKiri titles

dxvkopen d3d9
doitsujin/dxvk#4754 · opened 2025-03-09 by ghost · updated 2025-08-22 · 6 comments · github
?ghost 2025-03-09 github

Titles that use the KiriKiri Engine have annoying flickering issues when DXVK is used (Can probably cause epilepsy)
The flickering occurs every time a new sprite appears on screen. Sometimes with a permanent black screen that requires restarting the game
This does not occur on Windows with DX9
Occurs with DXVK Windows, Linux and Steam Deck. On all Proton versions

Software information

Riddle Joker, Senren Banka. These titles do not have graphics settings
Games are 32-Bit
Occurs on both Steam and GOG versions

System information

  • GPU: AMD Radeon 780M / AMD RDNA 2 GPU
  • Driver: 25.3.1
  • Wine version: Proton Experimental / GE-Proton 9-25
  • DXVK version: 2.5.3

Log files

Soon, Below

Ddoitsujin maintainer 2025-03-09 github

Can already tell that these are going to rely on partial presentation in one way or another and are essentially desktop apps in a trenchcoat. Would just recommend using wined3d for these, it's not something we can support at the moment.

?ghost 2025-03-09 github

Here's the log. did things in the game that cause all the flickering
With past DXVK / Proton versions (Early 2024) i dont remember this issue being a thing,

steam-1277930.log

Qqinlili23333 2025-03-14 github

Occurs with DXVK Windows, Linux and Steam Deck. On all Proton versions
You said that it happens on Windows DXVk too right?

I cannot reproduce on Windows with DXVK 2.5.3/2.6 (Intel Xe & NVIDIA 3060) Senren Banka Steam ver.
If you can reproduce on Windows DXVK on AMD, then I would suggest it may be vendor specific issue.
Image
Image
Image
Image

More game info from running with -about

吉里吉里[きりきり] Z 実行コア version 1.2.0.3 ( TJS version 2.4.28 )
Compiled on Nov 30 2017 20:15:25

@CreeperofDoom Can you run game with "-about" and find this part in the window? I think the game may use different value as default on different hardware.

21:32:03 ! (info) Specified option(s) (earlier item has more priority) : -about=yes -padinterval=70 -contfreq=60 -dbstyle=d3d -usedb=yes -sqscr=off -scanim=yes -advancedmenu=yes -nod3dm=no -drawthread=8 -standcache=auto -datapath=$(appdatapath)/YuzuSoft/SenrenBanka -vomstyle=layer -wheel=message -readencoding=Shift_JIS -debugwin=no -hkupdaterect= -wsfreq=48000 -wsrecreate=yes -ghcompact=yes -bitmapallocator=separateheap -bitmapheapsize=0 -steam=yes
KK0bin maintainer 2025-03-14 github

Please make an apitrace.

Qqinlili23333 2025-03-14 github

Apitrace made on Intel native DX9. https://github.com/qinlili23333/PageConnect/releases/download/TEST/SenrenBanka_IntelDX9_apitrace.7z
Replaying with DXVK or without is both a bit weird that qapitrace generating 4 replaying window that 3 are blank each time.

Image
Edit: The game by default use Layer mode for video rendering. There're 3 video files for splash, and it creates D3D9Device for each video then release after video finish, that's why apitrace replaying has 3 blank windows as apitrace seems won't close window after context released.

The game locks with D3DLOCK_NO_DIRTY_UPDATE each frame. May be the reason. Need further investigation.

KK0bin maintainer 2025-03-14 github

Thank you.

Proton versions