0.9.9-alpha / 14-12-2021
OmniScaler basically takes a windowed game or application, converts its windowed contents to a fullscreen view via Directx 11 while mainting zero latency in the process. The trick is rather than a memory copy or video stream of the window contents, OmniScaler directly reads from the graphical output generated by windows.
True fullscreen. This is true exclusive mode fullscreen, not a window stretched out to fake a fullscreen mode. Negates latency from vsync MS Windows forces on windowed applications.
Directx 11. Reshade, SweetFX, Rivatuner, all work now.
Supports Windows 7, 8, 10
There no front end, so please follow these instructions to make it work.
Most Recent Changes
It has been completely rewritten. Please delete old files including the folder "omniscaler_files"
If the game window is resized or maximised, this will no longer cause Omniscaler view to stop scaling.
Windows 7 support fixes. This needs testing so pls provide feedback.
Mouse sub-system reworked.
ini now in same directory as executable
Relative path support. You can now place omniscaler in a folder within your game folder and set GameDir to ".." - omniscaler will correctly use the parent folder as the game directory.
Launcher detection: if your game requires a mandatory launcher, set its exe filename in LauncherExe and omniscaler will wait until the launcher starts, exits and launches the game proper. Note that you need to mention game exe filename in GameExe setting.
Completely new window clipping engine. If you have a game where the top menu is visible, or status bar at the bottom is visible you can now clip them out by filling the exact pixel height of the top menu in gamefs.ini, offset_top for clipping pixels from the top of the screen (top menu for ex) and offset_bottom for bottom of the screen (status bar for ex). In this new system offset_left and offset_right are ignored currently, planning on re-enabling them with improved code in the future.
OmniScaler is now DPI Aware. Supports users who have windows set at DPI scaling higher than 100%.
Improved efficiency of rendering code.
Fix Update: Detect games that go out of focus and lose input, bring them back into focus.
NOTE: All settings/shader files are now in the "omniscaler_files" folder. Please delete all older files and configure gamefs.ini in this new folder.
Overhauled window clipping engine. Pixel offset edits in gamefs.ini are no longer required for 99% of situations.
Overhauled alt+tab, alt+enter logic.
Overhauled integer scaling and integer overscan scaling. In gamefs.ini, set using:IntegerScaling=1
Custom mouse pointer. If a game does not include its own custom mouse pointer enable this feature:MousePointerEnable=1
NOTE: Custom mouse pointer is not compatible with overscan currently.
Additional features are available for the custom mouse pointer:
MousePointerLinear: Sets whether the custom mouse pointer is given linear interpolation, this is independent of the fullscreen linear interpolation.
MousePointerBig: Scales the custom mouse pointer based on the original window size of the game being scaled. Use if mouse pointer appears too small for certain retro games.
Bugfix for Alt+Tab, close behaviour.
Integer scaling overscan (integer scaling needs to be set to 1)
Offsets now accept negative values
Alt+Tab and Alt+Enter support
Added option to enable / disable linear filtering.
Set this to zero for "pixel perfect" in gamefs.ini:
Test release. No UI.