Hello everyone! As promised, I am making a new thread so I can own this top post and edit it in the future for release/communication.
As many of you have already read on the original thread, I have developed a piece of software that enables the use of the NVIDIA Image Scaling algorithm (aka NIS) while using VR and Flight Simulator 2020.
Link to the most recent version:
NIS is intended to replace your use of the in-game render scale as it is very low cost (from all the data I have, performing upscaling with NIS only seems to “consume” 1 FPS) while performing an additional sharpening pass to improve visual quality. While not everyone is getting the quality or performance improvement they wish for, the feedback has been generally positive on using this software. Please give it a try.
HERE IS ALSO A VIDEO (Thanks @PIESKYTOURS)
- Download the MSI file:
- Run the downloaded MSI file and install the program:
- Start the OpenXR NIS Scaler configuration tool:
- Select “FS2020 - Microsoft Flight Simulator 2020”, check “Enable NIS Scaling”, adjust the scaling/target resolution if needed.
Close the configuration tool (settings are saved permanently).
Start Flight Simulator. Enter VR. You can use Ctrl+F1 to switch between NIS and no NIS at the same resolution, and you should be able to see the different in pixelation.
(This section is under construction, come back later for more)
Until we can come up with common guidelines, you can take a look at my post explaining how to take screenshots and compare them.
Q: What headset does it work with?
It should work with any VR headset thanks to OpenXR. We’ve seen success with Windows Mixed Reality (eg: HP Reverb), any headset going through the SteamVR runtime (Valve Index), Pimax, Oculus Quest…
Q: What GPUs does it work with?
The NIS shader works on any modern GPU, even not NVIDIA. I have only tried on a GT 1030 (not with MSFS obviously) and a RTX 2080.
Q: There’s already a NIS option in my GPU driver… Do I need this?
The NIS option in the NVIDIA drivers does not apply to VR. You need this software to use NIS with VR. It is also recommended to turn off NIS in the NVIDIA driver when using this software, otherwise the GPU will be performing extra processing for the desktop view and not for VR.
Q: Does it work with DX11 and DX12?
Only DX11 at this time.
Q: Will it work with other games like the ones from Steam?
This only works with OpenXR applications, not OpenVR and the other ones.
Even with OpenXR applications, I can’t guarantee it will work as I’ve only implemented the bare minimum for MSFS.
Q: How does the scaling value fit in with the OpenXR render scale and the game’s render scale?
The software uses the resolution returned by OpenXR (ie the one after OpenXR scaling, that you can see in the OpenXR Developer Tools if using Windows Mixed Reality, under System Status → View configuration). It applies its scaling to that resolution. The game engine will then render at this resolution, unless you use the in-game render scale (not recommended).
There’s a more detailed explanation of the upscaling process here.
Q: Where can I report bugs?
The preferred way is to use the GitHub project issues page. If you don’t have GitHub access, you can send me a message and/or use this thread.
Q: Is this affiliated with Microsoft?
While I am a Microsoft employee working on OpenXR, please note that this is a personal project not affiliated with Microsoft.
Q: Is it open source? Can I contribute?
It’s 100% open source, and if you’d like to contribute I’m happy if you get in touch with me!
Q: Why does this have a weird name?
It’s following the OpenXR naming convention:
XR_ → This is for Khronos’ OpenXR (as opposed to GL for OpenGL or VK for Vulkan for example).
APILAYER_ → This is an API layer, ie it intercept existing API, as opposed to an EXT that would add new ones.
NOVENDOR_ → This is not owned by any company, I am developing this independently.
nis_scaler → That’s what it does, duh!
Q: Will it support FSR?
Q: Will it support DLSS?
I am actively investigating DLSS support, however my current conclusions are that it is not possible to implement DLSS outside the game because Flight Simulator does not pass its depth buffer to OpenXR.