Integer Scaler
Integer
Such lossless scaling may be useful for modern 3D games as well as for old games and pixel-art games. See e. g. a screenshot showing the “SimCity 2000” game () (640×480 native resolution) upscaled to 4K with Integer
Unlike similar software, Integer
How to use: switch the game to windowed mode and press Alt+F11 when the game window is active (focused). If Alt+F11 does not work for the game, make the game window inactive, use delayed scaling via Ctrl+Alt+F11 or via the “Scale after 5 seconds” item of the menu of the Integer
Windows 11 and DirectX 12:
some users report that in recent versions of Windows 11
at least when using nVidia GPUs (graphics cards),
there is blur when using magnification mechanism built into Windows,
including when using standard Windows application Magnifier.
Also, there is blur in games that use DirectX 12
(e. g. “Cyberpunk 2077”),
even in Windows 10.
This cannot be fixed on Integer
- See also
- SmartUpscale — web-browser extension for preventing blurring images on web pages.
- bsnes-mt — SNES (Super Nintendo) emulator with support for pixel-perfect integer-ratio scaling.
Features
- Integer-ratio scaling with no blur for games that support windowed mode.
- Support for Windows 7 and newer.
- Ability to automatically scale specified games (via
auto.txt
file). - Ability to use custom background color instead of black (the
-bg
option). - Ability to limit the cursor-movement area to game window (the
-clipcursor
option). - Support for scaling with fractional scales (the
-fractional
option). - Ability to specify a custom scaling ratio, a fractional one in particular (the
-ratio
option). - Ability to crop (the
-crop
option). - Ability to resize game window (the
-resize
option). - Ability to disable hotkeys (the
-nohotkeys
option). - Ability to scale automatically with a specified delay after the app start (the
-scale
option). - System-tray icon with menu.
- Support for two user-interface languages: English and Russian.
-
100% portable app:
- does not need installation — just unpack and use;
- does not write files outside of its folder;
- does not write to Windows registry;
- free of dependencies like .NET Framework;
- can run from an external storage such as a USB flash drive.
The application simulates full-screen mode for windowed games. The scaled image is centered on the screen. The screen area around the image is filled with solid-color background (black by default).
Integer scaling ratio for filling the screen as entirely as possible is calculated automatically and recalculated when scaled-window size is changed according to the game’s resolution.
Scaling is not applied to maximized windows.
Scaling is automatically disabled when the scaled window is closed, and is also temporarily disabled when the scaled window is minimized or maximized, and automatically enabled once window is returned to normal (not minimized, not maximized) state. Scaling also disables temporarily when the scaled window loses focus e. g. as a result of pressing the Alt+Tab keyboard shortcut.
User interface
The user interface of the program consists of the two parts:
- keyboard shortcuts (hot keys) for controlling scaling;
- icon in the notification area (system tray) with a menu.
Keyboard shortcuts
Pressing the Alt+F11 keyboard shortcut enables scaling for currently active window. Pressing it again disables scaling regardless of what window is active.
Pressing the Ctrl+Alt+F11 keyboard shortcut enables scaling with a delay of 5 seconds. This allows to enable scaling even in games which block third-party keyboard shortcuts while the game’s window is active: just press the keyboard shortcut while the game window is inactive and then switch to the game window in 5 seconds. The same action can be done via the “Scale after 5 seconds” item of the application menu.
Additionally, the program disables scaling when the Ctrl+Alt+Delete keyboard shortcut is pressed.
Menu
A click on the icon shows the menu that allows to enable scaling, view information about the program, open links to relevant web pages, or close the program.
Autoscaling
It’s possible to automatically apply scaling to user-defined games. Each game is defined and identified by full path to its executable file (*.exe
). Those paths should be listed one-per-line in the text file named auto.txt
inside the Integerauto.txt
contents:
D:\
D:\
D:\
There is currently no user interface for editing this list, so a third-party text editor like Windows Notepad should be used.
The auto.txt
file should be saved using the UTF-8 encoding, this is required for international characters in paths to game executables to be correctly recognized.
Command-line options
Command-line options (parameters, arguments) allow to use optional advanced features of Integer
Options can be specified in the “Target” field on the “Shortcut” tab in properties of the shortcut (*.lnk
) to the executable file (*.exe
) of Integer
Parameters should be specified after a space following a path to the app’s executable file. Parameter name and value are separated with a space. Specific order of parameters does not matter. The parameters can be used separately, independently from each other.
Note that command-line options have nothing to do with auto.txt
and will not work if you place them there.
In the option descriptions below, the following notation conventions are used:
- all-caps words like
POSITION1
are placeholders meant to be replaced with actual values; - square brackets around an option value mean that the value is optional and can be omitted.
Parameter values are case-insensitive.
In the following example, background is overridden to gray, cursor-movement area is limited to the client area of the game window, the game window is resized so that its client width and height are 1920 and 1080 correspondingly, the user-interface language is overridden to Russian, hot keys are disabled and scaling is applied in 3 seconds (3000 ms) after starting Integer
IntegerScaler_64bit.exe -background gray -clipcursor -resize 1920x1080 -locale ru -nohotkeys -scale 3000
The same example with shorthand variants of parameters:
IntegerScaler_64bit.exe -bg gray -cc -rs 1920x1080 -l ru -nohk -s 3000
Advantages over scaling via GPU
-
Ability not just to center the scaled image,
but also align it to any of the sides or corners of the screen (
-align
option). This allows, for example, to prevent burn-in of OLED displays, by distributing wear more evenly over the screen area when the image does not occupy the entire screen. - Ability to crop the image for fuller usage of screen area (
-crop
option). -
Ability to specify a custom scale different from the mathematically maximum one (
-ratio
option). -
Ability to use non-integer (fractional) scales for fuller usage of screen area
(
-ratio
and-fractional
options). When using GPU for scaling, such ability is only available in Intel drivers. -
Ability to specify a non-black color of the background
around the scaled image (
-background
option). -
Unlike the nVidia implementation of integer scaling,
Integer
Scaler is compatible with HDR, including the “Auto HDR” feature in Windows 11. - Unlike the AMD implementation of integer scaling, alignment works properly. In the AMD implementation, the image is not centered vertically, but aligned to top edge of the screen that affects, for example, RX 550 and RX 570 GPUs.
-
Unlike the nVidia and Intel implementations,
Integer
Scaler works not just under Windows 10+, but also under Windows 7.
Advantages over Windows Magnifier
Integer
- only important part of the window is displayed — with no borders and title bar;
- the space around the image is filled with black color like in full-screen mode;
- the image is automatically centered on the screen with no need for precise mouse positioning;
- scaling ratio is calculated automatically for filling the screen as entirely as possible.
Compatibility with games
For information about compatibility of some games with windowed mode and Integer
Windowed mode
The application is compatible with absolute majority of games that support windowed mode, and does not work with games running in full-screen mode.
If specific game has no explicit setting for switching between full-screen and windowed modes, the Alt+Enter keyboard shortcut may help.
DPI-awareness
It’s important to make sure the game is in DPI-aware mode. The criterion is simple: the game-window size in physical pixels should correspond to in-game resolution. For example, window of a game running at Full HD resolution should occupy about 1/4 (1/2 horizontally and 1/2 vertically) of 4K screen at 200% OS-level zoom, not entire screen.
Games that are not DPI-aware require disabling DPI virtualization (DPI scaling) in executable’s (*.exe
) properties, to have proper window size with no possibly blurry scaling automatically applied by Windows to non-DPI-aware applications.
DPI scaling for a specific game can be disabled via properties of the game’s executable (the “Properties” context-menu item).
- Windows 10
- “Properties” item → “Compatibility” tab → “Settings” section → “Change high DPI settings” button → “High DPI scaling override” section → “Override high DPI scaling behavior. Scaling performed by” checkbox → “Application” dropdown item.
- Windows 10 (older versions)
- “Properties” item → “Compatibility” tab → “Settings” section → “Override high DPI scaling behavior. Scaling performed by” checkbox → “Application” dropdown item.
- Windows 7
- “Properties” item → “Compatibility” tab → “Settings” section → “Disable display scaling on high DPI settings” checkbox.
Mouse
Perceived movement speed of mouse cursor may increase proportionally with scaling ratio.
Administrator mode
For scaling games running as administrator, Integer
Aero / DWM composition in Windows 7
For scaling to work in Windows 7, the Aero mode (DWM composition) must be enabled (the Windows’ built-in Magnifier app has the same requirement). Integer
Frequently asked questions (FAQ)
- Can it scale games in full-screen mode?
- No. The game to scale must be running in windowed mode. Full-screen integer scaling is possible via graphics drivers with modern graphics cards (GPUs).
- Can it scale just one display without blacking-out other displays?
- No. The only reasonable way to do this has serious performance impact that would contradict with the app’s purpose of providing the same performance as in full-screen mode, just with no blur.
- Why is game window just centered and not scaled?
-
Most likely your screen resolution is not enough for integer scaling at the chosen resolution of the specific game. Both horizontal and vertical screen resolutions must be at least twice greater than the game-window size. Otherwise, the maximum integer scale is 1.0 (100%) which is equivalent to regular centering with no scaling.
For example, this happens at the window size of 1280×720 (HD) and screen resolution of 1920×1080 (Full HD), because 1920 / 1280 = 1080 / 720 = 1.5. More details are in the answer to a similar question in the article about integer-ratio scaling.
If fuller screen-space usage is more important for you than image quality and having no distortion, you can try to enable using fractional scales with the
-f
(-fractional
) command-line option. - Is it safe to use with anticheat-protected games?
-
Integer
Scaler does not inject anything into the game process, so it should be safe to use with anticheat-protected games as long as the anticheat software does not blindly consider any third-party software running simultaneously with the game as cheat-related. There were no reports about any anticheat-related issues since releasing the first Integer
Scaler version in . - Is it open-source?
- No. The source code of the app is closed and is not a subject for opening. You might be interested in the author’s Integer
Scaling library (C++/Rust/ JS/PHP) for calculations related to integer scaling. - Could it support Linux?
-
Highly unlikely. Integer
Scaler uses a scaling mechanism built into Windows and missing in Linux. But integer scaling is already possible in Linux in other ways: -
xrandr 1.5.1+
supports scaling with no blur via the
nearest
filter, but some full-screen games are cropped; - a feature similar to that of xrandr is supported by the nVidia driver as a part of the “Transform Filter” feature;
- the Proton wrapper used in the Steam Play feature for running Windows games supports integer scaling.
-
xrandr 1.5.1+
supports scaling with no blur via the