Skip to content

feat: FPS counter over the game through RTSS - #138

Merged
lippdev merged 5 commits into
mainfrom
feat/fps-overlay
Oct 3, 2026
Merged

lippdev merged 5 commits into
mainfrom
feat/fps-overlay

Conversation

@lippdev

@lippdev lippdev commented Oct 3, 2026

Copy link
Copy Markdown
Owner

What

FPS counter drawn by RivaTuner (RTSS) in Console Mode's style, picked in Settings or cycled with A on a new "FPS counter" row of the session menu (Select + Y).

  • Styles: Afterburner (default, changes nothing), Off (nothing on screen), Compact, Detailed (API, FPS, frame time) and Custom (items, one line or stacked, number color — set in Settings, applied live during a session).
  • Written straight to RTSS shared memory (RTSSSharedMemoryV2, per the RTSS SDK) in our own OSD slot (ConsoleMode); needs RTSS, not rtss-cli.
  • Except on "Afterburner", MSI Afterburner's OSD is hidden during the session: RTSS can't hide a slot and Afterburner's OSD hotkey turns the whole OSD off, so its slot text is emptied right after each rewrite (~1 s). It comes back by itself when ours is off or the session ends; Afterburner's settings aren't touched.
  • Also bumps to 1.6.0-beta.7.

Verification

  • dotnet test: 345 passed (new RtssOverlayTests); app builds on Windows.
  • Slot write/release checked against a live RTSS with Afterburner running (Afterburner keeps slot 0, ours takes slot 1, release leaves slot 0 intact); measured Afterburner's rewrite period (~1 s).
  • In-game behaviour tested by the owner with a portable build; checklist added to docs/TESTING.md.

🤖 Generated with Claude Code

lippdev and others added 3 commits October 3, 2026 17:05
A new session-menu row draws a styled FPS counter through RTSS shared
memory (compact or detailed), in its own OSD slot so MSI Afterburner's
OSD is left untouched. The choice is saved and the slot is released when
the session ends.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
RTSS has no way to hide another client's slot, and Afterburner's OSD
hotkey turns the whole OSD off, so empty its slot text right after each
rewrite while our counter is shown. Afterburner's next rewrite brings it
back once ours is off.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
The counter now has five styles. "Afterburner" (the default) leaves
Afterburner/RTSS alone; Off, Compact, Detailed and Custom take over the
screen, so Off really shows nothing. Custom picks the items (API, FPS,
frame time), one line or stacked, and the number color, set in Settings
and applied live during a session.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@pullfrog

pullfrog Bot commented Oct 3, 2026 •

Copy link
Copy Markdown
Contributor
  • Read PR diff and existing PR summary
  • Trace changed behavior and validate potential findings
  • Update PR summary and submit one review

Pullfrog  | View workflow run | via Pullfrog | Using gpt-6-luna | 𝕏

lippdev and others added 2 commits October 3, 2026 17:06
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@lippdev
lippdev merged commit c5e63a3 into main Oct 3, 2026
4 checks passed
This was referenced Oct 6, 2026
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.

1 participant