Into the Radius VR

Into the Radius VR

Not enough ratings
Boost Performance in ITR [Updated 4/4/23]
By Will
This guide is intended for those who have a low spec system and use a quest 2 with virtual desktop. Methods I use in here may work for those who use airlink but I strongly suggest using virtual desktop because there is more you can tweak within it. This is my first guide so don't butcher me yet.

Any text you see that is italics and quoted are mine and not by anyone else and just what I have said as a finalized statement. Text that are normal are most likely text to describe something. Text that bold are items that have a description.
   
Award
Favorite
Favorited
Unfavorite
My Computer Specifications
"So, this is here for you guys to get an idea on what kind of rig I'm using for these tests and you can use this information however you want."

CPU: Ryzen 5 3600
GPU: RX 580 4GB
MOBO: B450 Tomahawk Max
STORAGE: 2TB HDD, *this is what I have ITR in currently*
PSU: Corsair RM850X / 850W 80+ Gold Power Supply

"My current rig here is not overclocked. If you have an SSD or a M.2 for storage it is recommended to move your games to an SSD or M.2 since it much faster than a HDD. For these test I intended this rig for users that have reached the minimum specifications to run ITR."
Desktop Virtual Desktop Settings
"The streamer app for virtual desktop and its settings aren't explained at all so here I will explain it and tell you what I have changed and why I use it."

Preferred Codec

H.264 has less visually and has less latency than HEVC but HEVC has a better image quality but has more latency at the same bitrate with H.264.

"I chose H.264 because with my system it works better with less latency and more frames compared to HEVC. I would mess with this setting because everyone's system is different. Another choice is using Automatic, this could work better for some systems."

Automatically adjust bitrate

It automatically adjusts bitrate, it automatically changes your bitrate based on how much bandwidth you have available.

"I decided to disable this setting because I don't want Virtual Desktop automatically adjusting stuff that I have set for a reason. I prefer to have a static bitrate that works all of the time and not one that changes based on a circumstance."

Boost game priority

Increases GPU priority for games.

"I personally notice a boost in frames so I turned it on."

Quest 2 Virtual Desktop Settings
"Some of virtual desktop's settings are quite janky and I will try to explain them all and give you readers my current settings that I use for all of my games.

"Another note, it is suggested to have your PC hooked up to ethernet to reduce latency, you can use another dedicated router or a wifi extender if you can't feed a ethernet cable to your pc from your router. If your PC is hooked up to a wireless connection expect loads of latency and lag."

VR Graphics Quality

This can explain itself, basically depending on what setting you pick will determine how well everything in VR will look for you. This setting basically changes the render and streaming resolutions and the higher the setting is the better the picture is within VR.

"I decided to settle for the Low present in the streaming section within Virtual Desktop because I notice a lot more lag and latency going past Medium. After noticing that I decided to compare both Low and Medium, they look identical and there is really no difference unless you look hard enough. I did notice you get a increase in frames using Low that is what I am using. I am not going to mention using Potato because it looks like you smeared vaseline on your eyes and decided to play so I just opted out for using it. You do get a high amount of frames though so.."

VR Frame Rate

Setting this number to 90 for example will be the max amount of frames your system will try to reach.

"I decided to use 90 FPS since I used every other setting and either the latency increases or my frames drop drastically. For example, I had used 72 FPS in hopes that it would help me run ITR but running 90 was the best choice because it had gotten rid of the latency and gave me back my frames. 120 FPS was hot garbage and so was every other setting except 90 so this is what I had used. You can mess with this setting as it is suggested because some games may work better on a different frame rate cap."

VR Bitrate

This controls the amount of data transmitted to your headset. Setting this to a higher number will make the image look better but could add a heaping load of latency. Setting this to a lower number will make the image look like hot garbage and will reduce the latency and there is less to transmit.

"I decided to go for 75 Mbps for this after messing with it for hours, this number made the game look good and not have a lot of latency behind it. You can set this number to a lower number or a higher number passed on your situation but this is what was best for me."

Synchronous Spacewarp (SSW)

Under heavy load your PC will render half the frames that you have set, for example 90 fps. It will render half that which is 45 fps and the headset will render in the missing frames, you can set this to always or automatic. Automatic means it will render half the frames when needed, always will always render in half the frames, and disabled.. means its disabled and won't render any frames for you.

"I decided to disable this setting because it increases the latency for me and adds a warping effect whenever I move."

Video Buffering

Pretty self explanatory, it reduces occasional stuttering but it does add a bit of latency whenever you are playing.

"I really don't know about this setting as of now since I mess with it based on certain aspects but for the most part it stays off."

Into the Radius System Settings
All settings that are shown are within the active beta in ITR.

"I had messed around with each setting to give me the best visuals without tanking on my frames and with this I get around 70-80 frames depending where I am, what I am doing, what I am looking at, etc. I will do my best to explain each setting here so you can make a judgement on what to change."

Resolution

Setting this number will determine how well the game will look, setting this past 100% will make the game look better and setting it below 100% will make it look worse. Setting this higher will make your frames go down and setting it lower will make your frames go up so do whatever you want with this information.

"I decided to leave this at a 100% since setting it below 100% made it look like hot garbage. It made it so I couldn't see anything from a distance which made it hard for me to see enemies from a distance. Setting this to a 100% made it so I can so bam, I can see again. You can mess with this if you want that it up to you."

Upscale Method

AMD FSR, I'm not sure if there is NIS but this is what I've got. AMD FSR basically renders frames at a lower resolution and uses an upscaling algorithm to make the game look as if it was running at a higher resolution. Setting this to anything will make your frames go up, setting this to quality will make the image look better in comparison to balanced or performance.

"I decided to take advantage of this because I do see an increase in frames when I do use it and it doesn't look any different than when it is off. I use the quality setting for AMD FSR and it seems to work like a charm."

Anti-aliasing

Anti-aliasing basically smooths the rough or sharp jagged edges around objects. TAA and MSAA basically fix this.

"Upon testing I literally see no impact in performance so set this to whatever. I do notice that looking at something from far away looks blurred so be aware of that. Otherwise mess with it."

Fixed Foveated Rendering

FFR basically keeps the center of your screen or where your eyes would be looking at full resolution while cutting down on the edges of your screen at a lower resolution to save resources. This is intended to increase FPS while keeping the image looking good.

"Upon further inspection I literally see no difference either in gain for performance or decrease so I just set it to off to free myself rigorous torture."

Variable Rate Shading

I can't explain this any better than NVIDIA so here, is the link for it. https://developer.nvidia.com/vrworks/graphics/variablerateshading

"I literally see no difference much like FFR so I keep it off."

Screen Space Reflection

Adds reflections to certain items or objects, such as water. It will add reflections based on what is in front of it.

"Another setting I literally see no difference apart for more fancy visuals. I turned it off."

View Distance

Changes the distance in how far you can see objects. Setting this low will increase performance but will make objects look odd from afar, setting this to high will decrease performance but objects will look how they should from afar.

"I set this to medium as it does have a decrease in performance when I am outside exploring. I set it to medium since there are objects ingame I wouldn't need to see from a far in the first place."

Shadow Quality

Pretty self explanatory, depending on what setting you pick will determine how well a shadow will look ingame. Setting this to low will make shadows look jagged or missing but will yield better results in frames. Settings this to high will make shadows look awesome but will tank on your performance.

"I set this to medium as the shadows look only slightly different when it comes to comparing it to high."

Foliage Density

This determines how much nature will show, for example grass, not the anomaly, but like grass you see that is not harmful. Based on what setting you pick will show how much of nature you will see. Setting this to a higher setting will reduce performance because there is more for your system to render.

"I set this to medium since it does decrease performance when you go higher up. I personally like seeing nature in a lonesome game so yeah."

Effects

This setting will determine how well certain effects will look. Take the anomalies for example, when you set this to high you will notice that they will have a better visual effect when they are warping, shooting lasers at you, electrocuting stuff, etc. Setting this to low will make it look like clear plastic.

"I set this to medium as because there is quite literally no difference in performance based on the comparison between low and medium. Medium looks better and I want to keep that somewhat good visual look."

Geometry

This setting determines how everything around you will look. The land is made up of triangles and depending on what setting you pick will determine how well the land is shaped. This setting can be compared to tessellation, setting it to a lower setting will tend to yield better results performance wise.

"I see no difference at all visually or performance wise so I also set it to medium to be safe."


Oculus Mode VS. Steam VR Mode
Oculus Mode

Oculus Mode uses the Oculus runtime to direct all OpenXR games straight to your headset, in this case your quest 2. Meaning all OpenXR games will be fed directly to your headset.

Steam VR Mode

Steam VR is a tad bit different than Oculus, it acts as a middle man between your headset and your game that is being ran by your computer. Meaning all OpenXR games go to Steam VR which then handles it directly for headsets such as the Index or redirects it to the Oculus SDK.

"It took me a long time to understand the difference between them but to sum it up, Steam VR just acts like a middle man when it comes to feeding your game into your headset, unlike Oculus Mode it feeds games directly to your headset. There is a drastic performance boost when using Oculus Mode for me especially running ITR so I recommend just experimenting with it and seeing what works best."

Using VR Performance Toolkit
VR Performance Toolkit has a collection of mods to increase performance within games such as ITR. It has 3 upscaling techniques and fixed foveated rendering to increase performance. The VR Performance Toolkit supports both OpenVR and Oculus Runtimes and currently works as of now.

How to download VR Performance Toolkit

First, you want to direct to the link below, you will be led to a github that contains information about the toolkit.

https://github.com/fholger/vrperfkit

Second, you want to download the latest release for the toolkit.


-----------------------------------------------------------------------------------------------------

Third, you want to extract the zip file somewhere where you can access it and find the game executable within the local properties of steam. You can use the screenshots below as a guide.

-----------------------------------------------------------------------------------------------------

Fourth, after locating the main executable you will have to cut/copy the following files in the "vrperfkit_v0.3" folder to the folder that contains the main executable. The following files you need to copy over are the "vrperfkit.yml" "dxgi.dll" and "LICENSE".

-----------------------------------------------------------------------------------------------------

Editing the vrperfkit.yml

I strongly suggest opening this file with notepad++ as it makes looking at the file less confusing. You will see a load of settings that are in the yml folder with descriptions everywhere that explain every feature.

I advise you enable upscaling, switch the method from cas to fsr, and turing off applyMipBias. I would explain everything but this guide will be a long, you can refer to the green descriptions if you are using notepad++.

My vrperfkit.yml
# Upscaling: render the game at a lower resolution (thus saving performance), # then upscale the image to the target resolution to regain some of the lost # visual fidelity. upscaling: # enable (true) or disable (false) upscaling enabled: true # method to use for upscaling. Available options (all of them work on all GPUs): # - fsr (AMD FidelityFX Super Resolution) # - nis (NVIDIA Image Scaling) # - cas (AMD FidelityFX Contrast Adaptive Sharpening) method: fsr # control how much the render resolution is lowered. The renderScale factor is # applied to both width and height. So if renderScale is set to 0.5 and you # have a resolution of 2000x2000 configured in SteamVR, the resulting render # resolution is 1000x1000. # NOTE: this is different from how render scale works in SteamVR! A SteamVR # render scale of 0.5 would be equivalent to renderScale 0.707 in this mod! renderScale: 0.8 # configure how much the image is sharpened during upscaling. # This parameter works differently for each of the upscaling methods, so you # will have to tweak it after you have chosen your preferred upscaling method. sharpness: 0.7 # Performance optimization: only apply the (more expensive) upscaling method # to an inner area of the rendered image and use cheaper bilinear sampling on # the rest of the image. The radius parameter determines how large the area # with the more expensive upscaling is. Upscaling happens within a circle # centered at the projection centre of the eyes. You can use debugMode (below) # to visualize the size of the circle. # Note: to disable this optimization entirely, choose an arbitrary high value # (e.g. 100) for the radius. radius: 0.6 # when enables, applies a MIP bias to texture sampling in the game. This will # make the game treat texture lookups as if it were rendering at the higher # target resolution, which can improve image quality a little bit. However, # it can also cause render artifacts in rare circumstances. So if you experience # issues, you may want to turn this off. applyMipBias: false # Fixed foveated rendering: continue rendering the center of the image at full # resolution, but drop the resolution when going to the edges of the image. # There are four rings whose radii you can configure below. The inner ring/circle # is the area that's rendered at full resolution and reaches from the center to innerRadius. # The second ring reaches from innerRadius to midRadius and is rendered at half resolution. # The third ring reaches from midRadius to outerRadius and is rendered at 1/4th resolution. # The final fourth ring reaches from outerRadius to the edges of the image and is rendered # at 1/16th resolution. # Fixed foveated rendering is achieved with Variable Rate Shading. This technique is only # available on NVIDIA RTX and GTX 16xx cards. fixedFoveated: # enable (true) or disable (false) fixed foveated rendering enabled: true # configure the end of the inner circle, which is the area that will be rendered at full resolution innerRadius: 0.6 # configure the end of the second ring, which will be rendered at half resolution midRadius: 0.8 # configure the end of the third ring, which will be rendered at 1/4th resolution outerRadius: 1.0 # the remainder of the image will be rendered at 1/16th resolution # when reducing resolution, prefer to keep horizontal (true) or vertical (false) resolution? favorHorizontal: true # when applying fixed foveated rendering, vrperfkit will do its best to guess when the game # is rendering which eye to apply a proper foveation mask. # However, for some games the default guess may be wrong. In such instances, you can uncomment # and use the following option to change the order of rendering. # Use letters L (left), R (right) or S (skip) to mark the order in which the game renders to the # left or right eye, or skip a render target entirely. #overrideSingleEyeOrder: LRLRLR # Enabling debugMode will visualize the radius to which upscaling is applied (see above). # It will also output additional log messages and regularly report how much GPU frame time # the post-processing costs. debugMode: false

"This cuts off at debug mode, there is a hotkey section below this but I couldn't fit it all in. I did not tweak the hotkeys at all so it doesn't matter what you do to it, it is all personal preference."
Monitor Resolution & Refresh Rate
One thing that could be an issue with performance is your game preview, or the game you see on your monitor and not through your headset. The majority of VR games or software are made to display your game twice, one for your monitor, and one for your headset. Displaying two games at once can hog performance for your game within the headset.

You can fix this issue by going into your display settings within your computer and changing the resolution and refresh rate to a lower number. Once you do this the only thing that is being effected is your monitor, not your headset. So theoretically, all that performance that was being eaten up by your monitor is now gone and can be used for the headset. If you are on windows 11 you can see the screenshots below on how to lower your resolution and refresh rate.

How to change resolution
-----------------------------------------------------------------------------------------------------

How to change refresh rate
-----------------------------------------------------------------------------------------------------

"After testing this I do see a that there is a gain in performance when doing this, I don't do this myself because mainly I'm way to lazy to change my resolution and refresh rate, but yes this does work."
Overclocking AMD & NVIDIA Cards
Work in progress..
Conclusion
These are methods I have used to increase performance and overall it has worked well for me, this may work for you or not but if you have any suggestions I should add I am willing to do research and add it here. I will try to keep this guide up to date when future updates come by for ITR.
1 Comments
WizzDude May 8, 2023 @ 2:17pm 
More Performance Observations:

For me, the in-game resolution setting is very demanding compared to just increasing it in SteamVR. Went from ~4.7ms with the game set to 130%, Steamvr at 100%, to ~4.2ms with the game at 100%, Steamvr at 130%. So it's the same resolution, looks the same, but runs noticeably better.

Fixed Foveated Rendering does increase performance for me, but there is a negligible performance difference between FFR and VRS on balanced vs FFR on Wide and VRS on Performance. The Wide setting is less noticeable so I use that configuration.