Resolution scaling in games. What is “GPU scaling” in the AMD video card driver settings? Which smoothing method to use
IntegerScaler - free program for scaling games by an integer factor. For example, in resolution Full HD(1920x1080) on a 4K monitor (3840x2160), each logical pixel is displayed as a square group of four (2x2) physical pixels of the same color.
This lossless scaling can be useful for both modern 3D games and older games and games based on pixel graphics ( pixel art). See, for example, games "SimCity 2000"(1993) (native resolution - 640x480), upscaled to 4K using IntegerScaler.
How to use: switch the game to windowed mode and press Alt + F11 with the game window active. If Alt + F11 for a specific game does not work, make the game window inactive, enable deferred scaling using Ctrl + Alt + F11 or the “Scale after 5 seconds” option in the IntegerScaler menu and make the game window active again.
See also To remove blurry images on web pages, use the extension for Firefox and Chrome.
Functionality
The program simulates full-screen mode for games running in windowed mode. The scaled image is displayed in the center of the screen. The space around the image is filled with a plain background (black by default).
An integer scale factor that ensures maximum screen filling is calculated automatically and recalculated when the size of the scaled window changes when the game resolution changes.
Scaling does not apply to expanded ( maximized) windows.
Scaling is automatically turned off when closing the scaled window, and is also temporarily turned off when the scaled window is minimized or maximized to the entire desktop, and automatically turned on again when the window returns to its normal (neither minimized nor maximized) state.
Interface
The user interface of the program consists of two parts:
- keyboard shortcuts (hot keys) to control scaling;
- icon in the notification area ( system tray) with menu.
Keyboard shortcuts
Pressing the Alt + F11 key combination enables zooming for the active in this moment window. Pressing it again turns off zooming, regardless of which window is active.
Pressing the keyboard shortcut Ctrl + Alt + F11 enables zooming with a delay of 5 seconds. This allows you to enable scaling even in games that block third-party keyboard shortcuts from being processed while the game window is active: just press the keyboard shortcut while Not active game window and within 5 seconds switch to the game window. The “Scale after 5 seconds” item in the program menu serves the same purpose.
The program also turns off zooming when you press the keyboard shortcut Ctrl + Alt + Delete.
Menu
Clicking the icon displays a menu that allows you to enable zooming, view program information, follow links to related web pages, or exit the program.
The program interface supports Russian and English language and, the language is selected automatically based on the interface language operating system.
Autoscaling
It is possible to automatically apply scaling to user-specified games. Each game is specified and identified using the full path to its executable file (*.exe). Such paths should be specified each on a separate line in text file named auto.txt in the IntegerScaler folder.
There is no user interface for editing this list, so you should use a third party text editor like Windows Notepad. It is not recommended to use national characters in paths to game files, otherwise auto-scaling for the corresponding games may not work.
Command Line Options
The following are supported optional options command line:
Bg COLOR
Overrides the background color that fills the screen space around the scaled image. Supported values:
- gray - gray;
- white - white;
- custom color in format R,G,B(without spaces), where R, G and B are integers in the range 0-255, corresponding to the red, green and blue components of the color respectively, for example, 64,128,192.
The default is a black background.
Clipcursor Limits the area of mouse pointer movement to the client area (window area excluding frames and title bar) of the game window. -resize WxH Resizes the game window so that the client area (the area of the window excluding the frames and title bar) of the window has given dimensions in WxH format, where W and H are the required width and height in pixels, respectively. For example, 1920x1080. Useful for games that do not resize the window to match the in-game resolution or set the window to the wrong size.
Overrides the program interface language. Supported values:
- en - English;
- ru - Russian.
By default, the operating system interface language is used if it is Russian, and English in any other case.
Nohotkeys Runs IntegerScaler with hotkeys (keyboard shortcuts) disabled. -scale[DELAY]
Applies scaling half a second after IntegerScaler starts (if no delay is specified) or with a delay specified in milliseconds.
This example redefines the background to gray, redefines the interface language to English, disables hotkeys, and applies scaling 3 seconds (3000 ms) after running IntegerScaler: IntegerScaler_64bit.exe-bg gray -clipcursor-resize 1920x1080-locale en -nohotkeys 3000
-scale Parameters can be specified in the field"An object" on the tab"Label" in the shortcut properties (*.lnk) executable file (*.exe). You can create a shortcut using the item "Create shortcut" context menu clickable executable right click
mouse on the executable file.
Parameters are indicated separated by a space after the path to the program executable file. The parameter value is indicated with a space after its name. The order in which the parameters are specified does not matter. The parameters can be used individually, independently of each other.
Bit depth For the program to work necessary
use its version, the bitness of which (32 or 64 bits) matches the bitness of Windows.
Differences from Magnifier
- IntegerScaler compares favorably with the standard Windows Magnifier program:
- only the significant part of the window is displayed - without frames and title bar;
- the space around the image is filled with black, as in full screen mode;
- the image is automatically centered on the screen without the need for precise mouse positioning;
the scale factor is automatically selected to fill the screen as much as possible.
Game Compatibility
See the table for compatibility of some games with windowed mode and IntegerScaler.
Windowed mode The program is compatible with overwhelming majority games that support (window windowed ) mode, and does not work
with games running in full screen mode. If the game settings do not explicitly switch between full screen ( full-screen
) and windowed modes, the keyboard shortcut Alt + Enter may work.
HiDPI mode It is important to ensure that the game runs in HiDPI compatible ( DPI-aware ) mode. This is easy to determine: the size of the game window is pixels (dots) must correspond to the resolution selected in the game settings. For example, a game window running in Full resolution HD, with a system scale of 200% on a 4K monitor should not occupy the entire screen, but approximately 1/4 of the screen (1/2 horizontally and 1/2 vertically).
For games that are not formally compatible with HiDPI, you need to disable DPI virtualization ( DPI scaling) in the properties of the executable file (*.exe) so that the game window is properly sized and free from blurring that may occur due to the scaling that Windows automatically applies to HiDPI-incompatible applications.
You can disable DPI virtualization for a particular game in the properties of its executable file (the “Properties” item in the file’s context menu).
Windows 10
“Properties” item → “Compatibility” tab → “Options” section → “Change high DPI settings” button → “Override high-resolution scaling” section → “Override high-resolution scaling mode” checkbox. Scaling is in progress" → "Application" item in the drop-down list.
Windows 10 (legacy versions)
“Properties” → “Compatibility” tab → “Options” section → “Override high-resolution scaling mode” checkbox. Scaling is in progress" → "Application" item in the drop-down list.
Windows 7
Item “Properties” → tab “Compatibility” → section “Options” → checkbox “Disable image scaling when high resolution screen."
Mouse
Subjective mouse pointer speed in games using systemic the mouse pointer can increase in proportion to the scale factor.
Administrator mode
To scale games running as administrator, IntegerScaler should also be run as administrator.
Aero in Windows 7
For scaling to work in Windows 7, Aero mode must be enabled ( DWM composition). The program automatically tries to enable Aero if it is disabled. This does not apply to Windows 8 and higher - there is a function DWM composition always on.
Previous versions available via version history (see below).
System requirements
- Windows 7+ (32/64 bit).
- The program does not require installation or any additional libraries.
Cool stuff, I've been wanting an opportunity like this for a long time.
AndreyAn excellent thing, it actually draws one pixel of the game on 4 monitors.
Jack AlligatorFinally I can easily play my games in FHD on my UHD monitor without getting any headache. It even runs fine with accelerated 3D-Games like Anno 1440, which could run in UHD, but with much too tiny menus, and in FHD of course blury text. It seems to run very well, not even any performance issues so far. Thank you very much!
PassatunerThanks a lot! Works, perfectly and even scales by the amount of times compared to my desktop resolution just to be able to fit the screen as much as it can without breaking aspect ratio! Doom 2 now finally feels like it should on a big screen! Love those huge pixels.
HiCZoKSo useful in preserving detail in sprite-based games when displaying at higher resolutions. Amazing software, you are doing great work for people who hate the in-built scaling of displays/gpus.
DanielIntegerScaler is really impressive, I’ve been looking for an app that does this for years now.
BenWorks really well and the games do look awesome!
Simone
- see also
- "" - an article about the essence of the issue, potential and partial solutions and progress.
- - an extension for Firefox that disables blur for images displayed at an integer scale. - corrects dimensions address bar and search fields in Windows Explorer
- Version history 2.11 (2019-12-09)
Support for resizing the game window and limiting the area of mouse cursor movement using the -resize and -clipcursor command line options, respectively. If you go to the video card driver settings AMD Radeon
, then in the section with display parameters you can find the “GPU scaling” option. By the way, Nvidia also has this option, it’s just called a little differently. Default this setting
almost always on. But why is it needed and when should it be turned on?
What is GPU scaling used for?
This option is needed to automatically adjust the resolution of the image displayed on the monitor by one or another application. For example, when you launch a particular game, and by default it is set to a resolution and aspect ratio that is not supported by your monitor, then the video card driver with the scaling option enabled is at GPU will fix it himself this situation
and optimizes the image output as much as possible so that not only does not appear, but also that there are no black bars on the sides of the screen.
This should be done in cases where there are problems with launching games, when a signal is sent to the monitor, or if the picture on the monitor is not at
Scaling is responsible for how your game will look on screens different sizes. We can make the game scale to each screen automatically during the preload stage so we don't have to worry about this in the future.
Scaling
Phaser has a special scale object that has several useful methods and properties. Change your preload() function to look like below:
Function preload() ( game.scale.scaleMode = Phaser.ScaleManager.SHOW_ALL; game.scale.pageAlignHorizontally = true; game.scale.pageAlignVertically = true; )
scaleMode has several options that determine how the Element can be used to render graphics via scripts (usually JavaScript). For example, it can be used to draw graphs, make photo compositions, or even perform animations. You can (and should) provide alternative content within the block
- NO_SCALE - do not scale anything.
- EXACT_FIT - scale with full filling of empty space vertically and horizontally, without respecting the aspect ratio.
- SHOW_ALL - scales the game, but maintains the ratio, so the pictures will not be distorted, as with the previous value. There may be some black bars around the edges of the screen, but we can all live with that.
- RESIZE - creates an element that can be used to render graphics through scripts (usually JavaScript is used). For example, it can be used to draw graphs, make photo compositions, or even perform animations. You can (and should) provide alternative content within the block
. This content will be rendered in both browsers, older ones that do not support canvas and browsers with JavaScript disabled."> with available width and height so you can place objects in the game dynamically; This is advanced mode. - USER_SCALE - allows you to do dynamic scaling, size calculation, scale and ratio yourself; again this is an advanced mode.
The other two lines of code in the preload() function are responsible for the vertical and horizontal alignment of the element. The element can be used to render graphics through scripts (usually JavaScript is used). For example, it can be used to draw graphs, make photo compositions, or even perform animations. You can (and should) provide alternative content within the block
Changing the background color
We can also make the background of our element. The element can be used to render graphics through scripts (usually JavaScript is used). For example, it can be used to draw graphs, make photo compositions, or even perform animations. You can (and should) provide alternative content within the block
Game.stage.backgroundColor = "#eee";
Compare your code
You can compare all the code from this tutorial with yours and play with it to understand how it works:
Following
We've learned how to scale our game, so let's move on to lesson three and find out.