PR #351: fix(fps): implement VSync-aligned Master Clock with high-precision sleep
Pre-release
Pre-release
PR #351
Title: fix(fps): implement VSync-aligned Master Clock with high-precision sleep
Source PR: WinNative-Emu/WinNative#351
Source branch: Fps
Source commit: f4a065986cd99d41d5d43d96ba5922c370e7887b
Build workflow run: https://github.com/WinNative-Emu/WinNative/actions/runs/25288231136
What This PR Is About
- Implemented a Master Clock architecture in XClient with a 4ms 'Goldilocks' buffer and high-precision spin lock.
- Restored FPS limiting to the DRI2 draw path (DrawRequests.java) for consistent throttling across all engines.
- Unified pacing in PresentExtension by queuing render requests immediately before the clock-gated sleep.
- Decoupled mouse input rendering from game pacing: input now uses a direct-to-GPU path for hyper-responsive cursor movement (120Hz+) while game world updates remain perfectly paced at 30/45/60 FPS.
- Added Hard Resync and VSync Bias logic to eliminate speed-bursts and micro-jitter.
- Removed the AtomicBoolean and Handler bottlenecks in GLRenderer to ensure zero-lag frame delivery.
Attached Artifacts
- WinNative-Debug-Standard-PR.351-f4a06.apk
- WinNative-Debug-Ludashi-PR.351-f4a06.apk
- WinNative-Debug-Pubg-PR.351-f4a06.apk
Built from source commit f4a06.