Whole-pixel centres
Crosshair units are physical pixels and the centre is snapped to a whole device pixel, so lines stay sharp at 125%, 150% and 200% instead of being antialiased into a grey smear.
Compatibility
crshX draws an ordinary borderless window on top of the desktop. Everything below follows from that one decision — including the display modes it cannot cover, and the ones it will not pretend to.
| Mode or situation | Result | Detail |
|---|---|---|
| Windowed applications | Works | The overlay draws over ordinary windows and every click passes through to them. |
| Borderless fullscreen | Works | The recommended mode for full-screen play: a windowed overlay can be composited over it. |
| Multiple displays, mixed resolutions | Works | Each display is enumerated with its own physical rectangle; the overlay can target any one of them. |
| Display scaling (100%–200% and fractional) | Works | Crosshair units are physical pixels. The centre is snapped to a whole device pixel, so lines stay sharp at 125%, 150% and 200% instead of turning into a grey smear. |
| Displays with negative coordinates | Works | A monitor left of or above the primary one has negative virtual-desktop coordinates; placement uses them as they are. |
| Exclusive fullscreen | Not supported | A windowed overlay cannot be composited into an exclusive fullscreen swap chain. Switch the game to borderless fullscreen. This will not be worked around. |
| Games whose anti-cheat blocks overlays | Limited | Some titles hide or refuse third-party overlay windows. crshX does not bypass that, because every bypass technique is one this product refuses to use. If a game blocks the overlay, switching still happens; you just cannot see it. |
| Secure desktop and the lock screen | Not supported | A normal desktop window cannot draw over protected surfaces by design. |
| Screen capture tools | Limited | Whether the overlay appears in a capture depends on how the tool captures, not on crshX. Window-by-window capture normally excludes it; full-desktop capture normally includes it. |
| Controller input | Not supported | Dynamic switching is keyboard only. No controller, mouse-wheel or gesture switching is implemented. |
01Anti-cheat
Some games hide or refuse third-party overlay windows. crshX does not attempt to work around that, because every technique that would work is one this product refuses to use. If a game blocks the overlay, dynamic switching still happens — you simply cannot see it.
The application asks for no elevation, installs no driver and opens no other process. Whether a given game or anti-cheat vendor permits a desktop overlay is that vendor's decision, not something this product can settle for you.
02Verification
201 automated tests cover the crosshair model, geometry, validation, colour handling, persistence, import and export, profiles, hotkey parsing and the switching policy. They were run with dotnet test in a .NET 8 container (Linux), Release configuration.
No claim is made about running on Windows
The window, the overlay, click-through, hotkeys, display changes and the installer cannot be executed in the environment where they were written. They carry no verified claim. The Windows smoke test guide exists to turn each of those rows into evidence.
| Fixed |
|---|
| A cancelled keyboard-listener start could leave a thread that never pumped messages, which could block shutdown |
| The small icon frames drew a closed square instead of an open targeting frame |
03Displays
Placement is computed from the display's real device rectangle rather than from assumptions about the primary monitor, which is what makes the awkward cases work.
Crosshair units are physical pixels and the centre is snapped to a whole device pixel, so lines stay sharp at 125%, 150% and 200% instead of being antialiased into a grey smear.
A display to the left of or above the primary one has negative virtual-desktop coordinates. Those values are used as they are, so the crosshair lands where it should.
Adding, removing, moving or resizing a display repositions the overlay. A saved display that has been disconnected falls back to the primary with a warning in the log rather than leaving the overlay off-screen.
04Systems
| Item | Requirement | Note |
|---|---|---|
| Operating system | Windows 10 (1809 / build 17763) or Windows 11 | x64 only. This is the declared support range; the build has not been run on either yet. |
| Runtime | None | The distributed build is self-contained and includes .NET 8, so there is nothing to install first. |
| Privileges | None | The process manifest requests asInvoker. No UAC prompt should appear at any point. |
| Disk | 63.0 MB, one file | The folder build is 64.3 MB as a ZIP and about 150 MB unpacked; an install takes about 70 MB. |
| Network | Not used | There is no update check, no telemetry, no account and no licence server. |
Full instructions, including what to expect on first launch, are in the quick start guide.