UPDATED ALPHA VERSION OF BFI / BLUR BUSTERS CRT BEAM SIMULATOR EXPERIMENT
This is an experimental branch of ShaderGlass dedicated to BFI & Blur Busters CRT Beam Simulator shaders.
Visit https://blurbusters.com/ to find out more about the shaders and their authors.
All other RetroArch shaders have been removed in this branch; use the mainline version of ShaderGlass for those.
This is alpha3, big thank you to everyone for testing previous alphas.
How to test:
- start up ShaderGlass, it will launch in a window
- it should default SubFrames to refresh rate / 60, double check in Output -> Sub-frames
- start up your game in borderless full-screen and limit to 60 fps if possible (using in-game limiter or RTSS)
- press Ctrl+Shift+G to bring ShaderGlass fullscreen while keeping focus in-game
- press Ctrl+Shift+A to toggle shader on/off to make sure it's active (if anything, image will be slightly darker); if you're seeing desync (hard flashing) you can use this hotkey to reset
- you can use Output menu to try different shaders and change some of their Parameters
For best results:
- disable "Hardware accelerated GPU-scheduling" (HAGS) in Windows if you have the option to (System -> Display -> Graphics -> Advances graphics settings; computer restart required)
- alternatively, use Process Lasso (https://bitsum.com/) to set ShaderGlass' both CPU and GPU priorities to Always Real-Time (works just as well as disabling HAGS for me)
- use latest version of Windows 11 (24H2) so that you are able to utilize Max Capture Rate
- set Windows Power Mode to Best Performance (every little helps)
- disable any other apps, overlays, disconnect additional monitors etc.
- start with lower graphics quality or older games: the more GPU headroom there is, the easier it will be to avoid desyncs
With all of the above, desyncs (i.e. flashing) and capture stutter are minimal on my setup (13600k, 5060Ti 581.08, 240Hz 1080p). I recommend starting with older games like Quake or Trackmania before trying newer titles (these can be a mixed bag; UE games in particular often flash in menus but work decently in-game).
As usual, feel free to give this a shot and report your experience. This is really just an experiment to see if using capture method is a viable approach to running beam simulation shaders (it's far from ideal, but nevertheless worth trying). Since we are dealing with the black box of Windows' GPU scheduling, any correlation with your settings or specs can reveal meaningful info.
Changes in alpha3:
- improved timing circuits to reduce capture stutter
- Max Capture Rate is now enforced when available (please update to Win11 24H2)
- merged in mainline fixes around device capture
Subframe specific options
You can adjust subframe-specific options to see if it makes a difference on your setup:
- Sync first sub-frame: when set, this will capture at 60 Hz and use the same input frame for all subframes (as is the intention); if you disable this you might get less stutter and lower latency but get some color/tearing-like artifacts from the shader
- Internal VSync: rather than using driver VSync, ShaderGlass can try to time frames to its internal VSync clock (older method kept for posterity/experiments only)
FREQUENTLY ASKED QUESTIONS
> What do I need to try this?
You need a high-refresh monitor which can run at a multiple of 60Hz (120, 240 etc.)
> I see slow moving scanlines or color banding on screen
This is a feature of CRT Beam Simulator to prevent temporary image retention. You can open Shader -> Parameters window and either set Scan Direction to 0 to disable, or adjust Gamma so that it's less visible.
> I started a game but it's flashing a lot
Try lowering quality settings in-game, you need a lot of GPU headroom; and make sure you did what you can from the best results list above.
> Every 10 or 20 seconds there's a "stutter wave"
Try to set your monitor to exact multiple of 60 Hz, not 239.76 Hz or something like that.
PLEASE PROVIDE FEEDBACK IN GITHUB DISCUSSION
#202