Skip to content

fix: wake render thread directly to stop FPS drop during touch input#538

Open
maxjivi05 wants to merge 2 commits into
WinNative-Emu:mainfrom
maxjivi05:touchscreen-fps-fix
Open

fix: wake render thread directly to stop FPS drop during touch input#538
maxjivi05 wants to merge 2 commits into
WinNative-Emu:mainfrom
maxjivi05:touchscreen-fps-fix

Conversation

@maxjivi05

Copy link
Copy Markdown
Contributor

requestRenderCoalesced() routed every game-frame compositor wakeup through the UI thread (mainHandler.post -> Choreographer.postFrameCallback). During touchscreen interaction the UI thread is saturated dispatching MotionEvents, so these wakeups fired late and the coalescing latch collapsed multiple guest presents into one, dropping displayed FPS.

Wake the VkRenderer thread directly via xServerView.requestRender(). The render loop still coalesces (one draw per iteration) and native FIFO present still paces to vsync, so the UI-thread/Choreographer hop was redundant as well as harmful. Removes the now-unused mainHandler/renderRequested fields and Handler/Choreographer imports.

maxjivi05 and others added 2 commits June 9, 2026 13:37
requestRenderCoalesced() routed every game-frame compositor wakeup
through the UI thread (mainHandler.post -> Choreographer.postFrameCallback).
During touchscreen interaction the UI thread is saturated dispatching
MotionEvents, so these wakeups fired late and the coalescing latch collapsed
multiple guest presents into one, dropping displayed FPS.

Wake the VkRenderer thread directly via xServerView.requestRender(). The
render loop still coalesces (one draw per iteration) and native FIFO present
still paces to vsync, so the UI-thread/Choreographer hop was redundant as
well as harmful. Removes the now-unused mainHandler/renderRequested fields
and Handler/Choreographer imports.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants