Lossless Scaling

Lossless Scaling

This topic has been locked
Hybred Jan 10, 2024 @ 4:52am
4
16
2
3
2
9
LSFG Guide & Tips
LSFG Guide

1 - Set your game to borderless fullscreen (if the option does not exist or work then windowed, it does NOT work with exclusive fullscreen)

2- Set "Scaling Mode" to "Auto" and "Scaling Type" to "Off" (this ensures you're playing at native & not upscaling, since the app also has upscaling functionality which you can use if you want)

DXGI Steps (Default)

3 - Cap your in game FPS to half your max refresh rate. If your hertz isn't evenly dividable like 165 just round down (ex 82)

WGC & GDI Steps

3 - Lock your in game framerate to a value you know you can always hit, these capture methods require a stable locked framerate to work. Interpolation has overhead so make sure your cap accounts for the slight FPS loss you get by using Lossless Scaling

–––––––––––––

Capture Method

DXGI (Default): Dynamically adjusts output framerate to be double the internal, making it have the best frame pacing and some VRR support.

WGC: Does not dynamically adjust the output framerate based on the in game framerate, as a result it requires a locked stable FPS and can have worse frame pacing. However it has less latency than the DXGI method and a 6-9% less overhead

GDI: Provides no benefits over WGC, its just there incase your windows version does not support any other method

Latency

- Enabling Allow Tearing will lower the latency but screen tearing will occur. This may be worth it though at high framerates

–––––––––––––

LSFG Tips

Tip 1: Overlays can interfere with Lossless Scaling, it is recommended to disable them (Game launchers, GPU software, etc).

Tip 2: Things under the "Rendering" tab except "Draw FPS" in the program may cause issues. If you encounter any issues disable them

Tip 3: Playing with controller offers a better experience than mouse as latency penalties are much harder to perceive

Tip 4: Enhanced Sync, Fast Sync & Adaptive Sync do not work

Tip 5: Add LosslessScaling.exe to NVIDIA control panel / app then change "Vulkan/OpenGL present method" to "Prefer layer on DXGI Swapchain"

Tip 6: Due to the fact LSFG has a performance overhead if you really want to hit a particular base framerate you can't quite get anymore or you want to claw some of that back either use LS's upscaling feature or lower in game setting

Tip 7: For systems with multiple graphics cards, it’s important to configure Windows correctly. Windows should use the same GPU to which the monitor is connected. Therefore:
1 - If the monitor is connected to the dedicated GPU (dGPU), configure the “losslessscaling.exe” application to use the “high performance” option.
2 - If the monitor is connected to the integrated GPU (iGPU), configure the “losslessscaling.exe” application to use the “power saving” option.

Tip 8: Turn off your second monitor. It can interfere with Lossless Scaling.

Tip 9: Use tools like RivaTuner to limit the FPS, especially in demanding games. Ideally, you’ll want to limit FPS to half (if 2x) or one-third (if 3x) of your monitor’s refresh rate. For example, if your monitor is 120Hz, lock the FPS at 60 (2x) or 40 (3x).

Tip 10: You can scaling off if you’re running the game at the same resolution as your monitor (native resolution). However, one of the advantages of the program is the ability to run games at lower resolutions than the native monitor resolution, improving performance without sacrificing too much visual quality.

Tip 11: Lossless Scaling can be used not only for games but also for other applications, such as watching videos in the browser, increasing the frame rate of low-quality videos.

–––––––––––––

LSFG Additional Info

Minimum Supported: 30fps to 60hz+
Minimum Advised: 45fps to 90hz+
Recommended: 60fps to 120hz+
Enthusiast: 90fps+ to 180hz+

If you liked this guide there's a complete video guide for everything the Lossless Scaling program can do that you can find here: https://youtu.be/7SgA7M_XhQw
Last edited by Hybred; Jun 18, 2024 @ 5:33pm
< >
Showing 16-30 of 204 comments
Nep-Play Jan 12, 2024 @ 7:14am 
I tested on Hellblade Senua's Sacrifice and looks great, I noticed some artifacts around the character during day light stages though, something like a ripple effect when you throw something on the water, but nothing too distracting, I already played this game once, but be able to play it again with everything on Very High and Ray Tracing on high as well is pretty cool. The FPS was locked to 30 on the Nvidia Control Panel (Vsync-Adaptive-Half Refresh Rate). I also tested it on Cyberpunk 2077, It works, but it's running better without it.
Hybred Jan 12, 2024 @ 10:02am 
Originally posted by Flapples:
pretty big inconvenience having to change your monitors refresh rate to something different for every game, hope they work around that in the future

There will be
shanie Jan 12, 2024 @ 4:17pm 
Fluff

Hi - many thanks for adding this super impressive feature!

I bought this software in the Steam winter sale on a whim, not actually needing it the time. I figured it was worth keeping around for just £2, as I often dabble with old games and it might come in useful one day.

Lo and behold, exactly 1 week after that sale ended - you implemented an impossible dream level feature, which reaps massive benefits that my most treasured game sorely needed!

Here's a short explanation of this game's circumstances, and a review of my experience:

The game is OMSI 2, a bus driving simulator, and its most discussed feature is its awful, awful optimisation, being littered with stutters and 20-30fps being considered a "good" level of performance. The game rarely goes above 50fps in most realistic situations.

Despite these issues going unfixed for decades, to this day we still have a very strong community of players & content-creators, as its simulation & moddability aspects are yet to be matched by any publicly released game.

My experience

For this account, I will be placing the game in a realistic intensive situation: A Studio Polygon 400MMC spawned at Stoneley Harbour in Westcountry 3[fellowsfilm.com]. Feel free to replicate the same environment for testing.

First of all, I was quite surprised to discover that despite the mentions of overlay incompatibility, LSFG works perfectly with both ReShade and DXVK in this game.

Whether the game is pushing out 30, 40 or 50fps natively, I always get around 90-100 generated fps from LSFG.

Unfortunately, however, its not a consistent experience - if I have 30fps natively, the game feels very choppy, compared to 40/50 native fps.

This is despite LSFG pushing out almost the same FPS (~100, reported by the "Draw FPS" option)

Sadly this is quite the dealbreaker, because in this game, most of the time is spent in the cab. But, you also need to look left and right to check for traffic.

This drastically changes whats being rendered: looking straight ahead means it's the street and a detailed dashboard with lots of buttons, needles, lights and a display; looking left/right means it's probably a few buildings and a simple window frame on the bus.

This results in a difference of ~5-10fps between looking straight ahead or left/right from the cab.

Without LSFG, its not overly noticeable, as the game feels laggy anyway.

With LSFG, however, its very noticeable, as it quickly moves from butter smooth when looking left/right, to much less smooth when looking straight ahead.

Additionally, this small change in FPS seems to throw the frame times off just enough, that an additional stutter is introduced when moving the camera left/right across the cab, which doesn't occur without LSFG.

Combine this with the fact I use TrackIR to sync the cab camera with my head movements IRL, and it sadly becomes a dealbreaker for an otherwise superb feature. This is because LSFG exaggerates the sudden increase/decrease in smoothness/fps when looking left/right, causing my TrackIR head movements to overshoot in-game.

Here is a video demonstrating how the head-movements work ingame: https://www.youtube.com/watch?v=Hf_SNjsp_FQ
Of course, this is most likely not the fault of LSFG, but I thought I'd provide an account of this niche use-case, just incase it helps the developer to improve their algorithms or tick off one more edge-case under the hood.

For the attention of the developer

One improvement you could make is adding a dropdown to select an enforced refresh-rate whilst scaling is being applied, to save the user having to manually switch it themselves.

It would also be great if you test this tool with DSR and ensure it works well - for some games that don't support MSAA, or where you require the depth-buffer for certain ReShade effects, DSR is the only option to eliminate antialiasing. Unfortunately, as my monitor's outdated DisplayPort specification does not support 144hz above it's native resolution, I cannot help test this on your behalf, otherwise I would!

Additionally, some form of window whitelisting/blacklisting would be helpful, whether automatic or user-controlled:

This game uses Delphi Forms to draw its user interface. It creates native windows separate from the game, that are not visible in the ALT+TAB menu or taskbar. They even have the same title! When a new UI window is created, the main game renderer is paused, and the newly created UI window simply replaces the main game window in the ALT+TAB thumbnail preview.

As a result, LSFG hooks into these UI windows, which are not actually game renderers, and this results in a lot of flickering and artefacts. Windows that the user needs to interact with immediately disappear under the game renderer, and titlebars are also sometimes missing. Do it fast enough, and Lossless Gaming crashes entirely (although this only seems to occur in windowed mode with OMSI 2 (the -windowed launch option)).

Here is a video demonstrating the issue: https://youtu.be/bG_MGn-fkk0
Some notes:
  • After showing the problem, I then disable LSFG and demonstrate how things should normally work.
  • To get back windows that disappear behind the game, I select them from the taskbar - this didn't show up in OBS for some reason
  • If you want to try and reproduce this, you can use the ALT key to toggle that menu in the bottom right.
  • Please ignore the Zugriff error that shows when I attempt to spawn a vehicle - it is not related to LSFG and does not affect the stability of the game.

Perhaps you could identify the size of a window, or whether a window has controls, then include/exclude it based on that information. Or you could potentially have it stick to the first hooked window only. Just putting this issue on your radar - I'm sure you can find a good solution yourself.

My settings

Here's everything needed to get it working properly with OMSI 2, or potentially other games:

  • My monitor: AOC AGON AG241QX - 2560x1440, 144Hz, GSync supported, DisplayPort 1.2
  • My GPU: NVIDiA GeForce RTX 3060M Max-Q
  • Display connection: USB-C to DisplayPort 1.4 cable, NVIDIA Optimus bypassed/not active
  • GSync switched ON for fullscreen + windowed modes in NVIDIA Control Panel
  • OMSI 2 limited to 72fps via NVIDIA Control Panel ("Max Frame Rate")
  • VRR support OFF in Lossless Scaling
  • OMSI 2 running in Borderless Fullscreen at monitor's native resolutoin (this is the default behaviour of the game, without any launch options)
  • DXVK v2.3 installed, with ReShade 5.9.2
  • VSync off in Nvidia control panel, and anywhere else that might enable it, for omsi, Lossless Scaling, and global settings too.

    Any other settings I tried either elminated the smoothness feeling with LSFG, or caused an the game to become stuck at 18fps or so. Most notably - if I turned off GSync, the game felt the same if not more choppy with LSFG! Not sure if this is normal...

    Apologies for the lengthy and bloated post, but I wanted to get every single detail down here, as I'd love to see this feature become more viable!
Last edited by shanie; Jan 12, 2024 @ 7:28pm
Araripe Jan 12, 2024 @ 6:28pm 
I have also been testing LSFG with OMSI 2 and the results so far have been very positive, although I'm not sure whether the FPS being displayed through the "draw FPS" feature are actually very accurate, given it's always something around 165, sometimes a bit less, which is way, way more than the less than 40-50 (sometimes far less depending on bus and map) I generally get with OMSI. While it does feel smooth, I'm not sure it feels 165fps smooth, maybe near 60 or something of the sort, which is not shabby at all, obviously. I wonder if there's an alternate way to quantify the performance gains as both Alt + R (Nvidia Perf thing) and MSI Afterburner (RTSS) are unable to show the extra framerate, only displaying what the game engine is reporting, which is what I generally yield without the frame gen. I do notice a substantial smoothness gain even when moving the camera around and stuff, but I wish I could actually quantify it somehow. While it might actually be 165, it probably ain't.

As far as settings go, I have limited the framerate to 60 with RTSS, which the engine promptly ignores (sometimes reporting over 70 fps in-game), and the FG thing always reports stuff around the 165 ballpark, no matter how low or how high the framerate is OMSI-wise. I have increased the graphics settings as much as I possibly could without making it actually unplayable, which averaged 17-20 without FG, and 160-165 still with FG, but it totally didn't feel like 165. Granted, I know it would be too much to ask for given it's below the recommended threshold and therefore wishful thinking that it could be remotely smooth, but even so, it still felt WAY better than 17-20 fps. It was definitely playable, let's put it that way. But the inability to quantify the gains has been quite frustrating. Oh yea, I have v-sync turned off and I'm relying on g-sync/freesync. It has been pretty solid as far as tearing mitigation goes and overall fluidity. If I do enforce variable refresh rates, though, things go berserk and, while the fps counter reports more than 600 fps (!), it feels terrible, worse than default. No v-sync has been way more efficient overall OMSI-wise. I have not tested it with other games as I don't really need it per se. OMSI is the only game I wish I could squeeze more performance out of, and on that regard I am very satisfied, yet puzzled by the actual gains because I don't know whether the counter is accurate or not.

With all that being said, I am extremely happy with the frame generator feature, especially because it doesn't seem to induce any sort of ghosting, which generally goes hand in hand with frame generation (FSR 3, looking at you). There's a lot of potential, and it might have just saved one of my favorite games of all time.

Keep up the good work, y'all!
NikkMann Jan 12, 2024 @ 7:07pm 
Amazing job, but has growing pains as expected.
Using with Sonic Frontiers, even at locked 60 there are still random jitters.
If you use "VRR Enabled", the nvidia gsync notifier in the top right of the screen disappears (so no gsync I guess?) and it becomes stuttery as hell.
Using "Allow frame tearing" doesn't help these issues.

Once these are ironed out, in the future I'd love to see a "dynamic frame gen" option where it only generates frames to get up your target refresh rate and no more than that. Would help reduce latency and artifacts if your game fps is more than half of your desired fps output.
And getting that to work with VRR would be killer.
Vovanishe Jan 13, 2024 @ 9:14am 
when turned on, it takes a lot of initial frames, the fps was 40, when turned on it drops to 26 and in the same way, with a limit of 30, it drops to 26, what should I do about it?.
Last edited by Vovanishe; Jan 13, 2024 @ 9:17am
Patoch31 Jan 13, 2024 @ 3:52pm 
Hello.
I'm flying with MSFS 2020 and I can't make it work. Before i used Dlssg-to-fsr3.dll method witch works fine in term of performance (except for somme artefacts) and I bought this software with the goal to get rid of artefacts. But, even after folowing the manual (set in RTSS freq to half than monitor freq (i only have a simple 60 hz monitor), it doesn't seem to work, ie no more fps between with/without LSFG. Is there anyone who succeeded to make it work ?
Rafael Stylo Jan 13, 2024 @ 4:14pm 
Originally posted by Araripe:
I have also been testing LSFG with OMSI 2 and the results so far have been very positive, although I'm not sure whether the FPS being displayed through the "draw FPS" feature are actually very accurate, given it's always something around 165, sometimes a bit less, which is way, way more than the less than 40-50 (sometimes far less depending on bus and map) I generally get with OMSI. While it does feel smooth, I'm not sure it feels 165fps smooth, maybe near 60 or something of the sort, which is not shabby at all, obviously. I wonder if there's an alternate way to quantify the performance gains as both Alt + R (Nvidia Perf thing) and MSI Afterburner (RTSS) are unable to show the extra framerate, only displaying what the game engine is reporting, which is what I generally yield without the frame gen. I do notice a substantial smoothness gain even when moving the camera around and stuff, but I wish I could actually quantify it somehow. While it might actually be 165, it probably ain't.

As far as settings go, I have limited the framerate to 60 with RTSS, which the engine promptly ignores (sometimes reporting over 70 fps in-game), and the FG thing always reports stuff around the 165 ballpark, no matter how low or how high the framerate is OMSI-wise. I have increased the graphics settings as much as I possibly could without making it actually unplayable, which averaged 17-20 without FG, and 160-165 still with FG, but it totally didn't feel like 165. Granted, I know it would be too much to ask for given it's below the recommended threshold and therefore wishful thinking that it could be remotely smooth, but even so, it still felt WAY better than 17-20 fps. It was definitely playable, let's put it that way. But the inability to quantify the gains has been quite frustrating. Oh yea, I have v-sync turned off and I'm relying on g-sync/freesync. It has been pretty solid as far as tearing mitigation goes and overall fluidity. If I do enforce variable refresh rates, though, things go berserk and, while the fps counter reports more than 600 fps (!), it feels terrible, worse than default. No v-sync has been way more efficient overall OMSI-wise. I have not tested it with other games as I don't really need it per se. OMSI is the only game I wish I could squeeze more performance out of, and on that regard I am very satisfied, yet puzzled by the actual gains because I don't know whether the counter is accurate or not.

With all that being said, I am extremely happy with the frame generator feature, especially because it doesn't seem to induce any sort of ghosting, which generally goes hand in hand with frame generation (FSR 3, looking at you). There's a lot of potential, and it might have just saved one of my favorite games of all time.

Keep up the good work, y'all!
as you locked it to 60 fps via rivartuner, you should also limit your monitor to 120hz, because if you leave it at 165hz the frame generation will not work correctly
Rafael Stylo Jan 13, 2024 @ 4:18pm 
Originally posted by Patoch31:
Hello.
I'm flying with MSFS 2020 and I can't make it work. Before i used Dlssg-to-fsr3.dll method witch works fine in term of performance (except for somme artefacts) and I bought this software with the goal to get rid of artefacts. But, even after folowing the manual (set in RTSS freq to half than monitor freq (i only have a simple 60 hz monitor), it doesn't seem to work, ie no more fps between with/without LSFG. Is there anyone who succeeded to make it work ?
your monitor is only 60hz, so you should limit the game to 30 frames to have 30 real + 30 fakes, of course if your game already runs close to 30 frames, otherwise it's better to try to focus on 60 native frames, perhaps using the LS1 upscale with a resolution below native

In my case I use LS to go from 60 frames to 120, I locked my monitor at 120hz and it went up to 160
If I'm honest, I only see my performance lost.

Is it because my screen is 360 Hz and I'm playing titles at 60 FPS? In the end I don't understand why if it's supposed to be a Frame Generation I have to lose fluidity in the game. I thought it might be because when doing Frame Gen, it uses GPU but I ruled it out by delegating that load to the other GPU I have.

60 FPS with LSFG looks like I was actually playing at 50 FPS, the experience is repeated playing with any of the Lossless Scaling options in the Rendering Options section.

I'm using NVIDIA with the global setting of "Default by Application". At the same time I'm running games in windowed mode at native resolution (1080p) at or above 60 FPS.
PACIO ☂7bandit.gg Jan 13, 2024 @ 11:56pm 
How to download RTSS version with this nvidia reflex support?
Truandale Jan 14, 2024 @ 1:29am 
The user interface in the game doubles when frame generation is enabled. The technology doesn't work. We are waiting for updates with fixes.
FranTesla Jan 15, 2024 @ 5:15am 
I found out a better and simple way to support odd refresh and do perfect half fps / hz using Nvidia Profile Inspector (a free program) (165Hz in my case), on the vsync options, there is "1/2 Refresh Rate", to be applied in the game profile, and leave LS without changes, this should automatically halve the game FPS to any Hz
*not all games support forced vsync, I will test out alternatives
Last edited by FranTesla; Jan 15, 2024 @ 5:40am
Per Jan 15, 2024 @ 10:56am 
Best settings for me is:
1. limit game fps in NVCP to avoid stuttering, unfortunatelly it adds input lag
2. best solution for input lag for me is disable vsync everywhere and enable it in NVCP for Looseles Scaling app (not global setting) only

Thanks to developer, dobrá práca
Last edited by Per; Jan 15, 2024 @ 10:57am
FranTesla Jan 17, 2024 @ 3:29am 
this is the golden ticket... RTSS Scanline Sync, is a different type of limiter, that takes into account the real refresh times, so you can click it and it will change to "x/2", that means half of your refresh with accuracy, put the FPS limiter to 0 and in the Scanline Sync box put something like "-100" (this is the amount of "negative" lines it uses to sync), and you have perfect halve FPS base on your Hz and synced
*(in some games with low GPU load for more accuracy use Prefer Maximum Performance for the GPU), also, re-open RTSS if you change Hz. and I recommend to disable the in game vsync
Tested with ton of games with butter-smooth results, (there are some exceptions, that get better results with FPS limits for example, 59.9 for 120Hz)
Last edited by FranTesla; Jan 17, 2024 @ 8:46am
< >
Showing 16-30 of 204 comments
Per page: 1530 50

Date Posted: Jan 10, 2024 @ 4:52am
Posts: 204