Setting up the Varjo Aero for iRacing
Last Update: 10/18/2023
This page will hopefully help people who have a Varjo Aero and want to get it working with iRacing. This is written from my perspective and hardware, which might be different than yours so take it all with a grain of salt. I have a 5800x3d processor. I had an RTX 3080 and upgraded to a 4090. I’ve indicated where one setting worked better for the 3080 vs the 4090.
My goal is to get settings that work on all tracks, in all cases, so I don’t have to change anything from race to race. You can push the settings to the extreme and then later, find out the fps is terrible on a different track or with different cars. I like leaving a little CPU/GPU power on the table for unforeseen track/car combinations.
My hardware: AMD 5800X3D, Gigabyte Aorus Ultra, MSI 4090 Suprim x 24, G.Skill Ripjaws 32GB (2×16) DDR4 3600 CL16-19-19-39, SK Hynix Platinum P41 1TB SSD, MSI MPG A1000G 1000W 80 Plus Gold.
While you need SteamVR installed, you won’t run it. You also don’t want OpenVR to run. If you use Overlays (ie RaceLabs or something similar), they won’t work with OpenXR. You don’t want to run an OpenVR overlay tool like Racelabs as having OpenXR and OpenVR running at the same time will dramatically reduce your FPS.
Varjo Base Software
Interpupillary Distance: There is some discussion as to how accurate or reliable this is. Mine would always be close when I had the headset calculate it but it did change every time I put the headset on. You can see what it is set to in the Manual Setting box. I set it manually using my eye doctor’s numbers. Of course, they manually measured it so even this probably isn’t 100% accurate in my case. Setting it manually removes the need for the software to run the test every time I put the headset on. Since I’m the only one using it, the manual setting made sense.
Foveated rendering: Mine is set to “Remember my calibration”. Eye tracking isn’t used in iRacing to improve image quality. Using this setting means I no longer have to do the “Stare at the dot” calibration when I put the headset on. With this and the previous setting, my headset is ready to go the moment I put it on.
Resolution quality: With my 5800X3D and a 3080, I had this set to the default of High or Higher and I didn’t use “Override Resolution” in the OpenXR Toolkit. Whatever you set this to will carry over to iRacing. Better resolution takes more CPU/GPU power.
When I added a 4090 I bumped this up to Highest – 39 PPD. You can override this resolution in iRacing to go even higher using the OpenXR Toolkit (discussed later). This is the holy grail.
Vertical Synchronization: Disabled
NVIDIA Control Panel
There are a few settings here you will definitely notice in iRacing. When you make a change, you’ll need to restart your iRacing session to see the results.
If you make these changes and play other games, you’ll want to use the Program Settings feature to only affect iRacing. Go to the Program Settings tab, select Add, find the iRacing iracingsim64dx11.exe and select it. Then make your changes.
Antialiasing – Mode: This must be set to Enhance the application settings if you want the next setting to work.
Antialiasing – Transparency: 2x (supersample): Leave it off on a 3080, it’s way too much for it to handle. But on a 4090, this will remove/reduce the shimmering produced on objects around the track. If they bother you, give it a try. It does come with a fairly significant performance hit but my 4090 could deal with it while using the other settings from this page. If you want to test this against Off and the Multisample setting, start a Test Race at Watkins Glen. Just look out the pit lane straight ahead. There is a grandstand and fencing there where you can see the shimmering. Remember, you have to restart your iRacing session after each change to see the results.
Multi-Frame Sampled AA (MFAA): Some report improved quality from turning this on. It has a slight performance impact. If you turn it on, you’ll need to restart your iRacing session to see the difference. If you see a difference, leave it on, if you don’t, turn it off.
Power management mode: Various guides recommend setting this to Prefer maximum performance. Looking at the FPS data in my testing, I can’t say this makes a difference. I’ve left mine on Normal.
Texture Filtering – Negative LOD Bias: Clamp. Setting this to Clamp turns off the feature and is recommended by many sources as best.
Virtual Reality pre-rendered frames: If your fps is pretty solid but you still sense some stuttering or a lack of smoothness, this setting can fix it. It defaults to 1 with the idea of reducing latency for games that need an instant keyboard-to-game response, as in a first-person shooter. In iRacing, we don’t have a need for super-low latency. Driving is about finesse, not being the first to blast a spaceship moving through the sky. You won’t notice a 0.001 latency (or whatever it is) decrease, but you will notice the increased motion smoothness this setting will give you.
Try 2 or 3 and see what you think. It made a big difference with my 3080. Less so with the 4090 but it does still seem to be a bit smoother. This may reduce the motion sickness some people feel. Moving from the 1 setting does have a negative impact on FPS but it is very small. For some, the difference can be well worth the fps impact.
This tool will help you get the best quality out of your system. It is available here. The first question everyone has is “What settings should I use?” Let’s dive right in. Start an iRacing VR session and then open the Toolkit.
Go to the Menu tab and switch “Show Expert Settings” to Yes. That will let us see the other things we need.
I don’t remember if 44pt is the default font size, but if you want, you can increase the font size. I do suggest changing “Menu Timeout” to None. This will keep the menu from disappearing while you try to figure out the settings.
Next, go to the “System” tab and set Disable mask (HAM) to No. If you have a 4090, you can try changing the Override resolution to 4600. Mine runs fine on this setting. This will really improve the image quality. I never tried changing this from the default with the 3080. Instead with the 3080 I used High or Higher resolution within the Varjo Base software. This carries over into iRacing.
Overlay: Most won’t use this but if you want to see what your CPU/GPU render speeds are, this is a very useful option. It is an overlay that will appear in your Aero view. You’ll turn it on here and then use the Menu tab, Overlay Horizontal and Vertical offset to position it. My settings are shown in the image of the Menu tab up above. I use this sometimes because the iRacing framerate graphic doesn’t work correctly in OpenXR.
Upscaling/Sharpening: Set this to CAS and 70%. If you don’t want to use Sharpening in iRacing, you can set this to 100%.
Foveated rendering: This is where all the power is.
Eye Tracking: Off. If you turn this on you’ll need to turn the culling off on the outside ring (discussed later). This will remove the dramatic fps benefits culling provides. In my testing, having eye tracking off and culling on was the best combination.
Cull outer mask (HAM): Custom. This is where the magic happens. It reduces the amount of work the GPU needs to perform for areas of the image you can’t see anyway.
Inner Resolution: 1x. Don’t change this.
Inner Ring Size: Set to preference. You’ll probably be somewhere between 55-65%. If you set Middle Resolution to Cull temporarily, you’ll easily see the inner ring size. Start with 65% and then tune to preference once you go through the remaining settings.
Middle Resolution: Set to preference. The larger the denominator, the worse the quality but the less processing the system has to do to show the area. If you set this to Cull, you’ll immediately see the area being tuned. For me, this is so far out on the periphery of my vision, I use 1/16 as the setting. Set to your personal preference.
Outer Ring Size: Set to preference. You’ll probably be in the 90-100% range. First, go to the next setting, Outer Resolution, and change it to Cull, then come back to this one. As you lower and raise this percentage, while looking straight ahead, you’ll see the Culled area move out of your vision. Run it up until you no longer notice it.
Outer Resolution: Cull
Prefer Resolution: Vertical
Horizontal Scale: Set to preference. The most common recommendation is 165%. To see what it does, change the Middle Resolution setting to Cull. Then adjust this setting. You’ll see it change from an ellipse to a circle. Set it to your preference for where you want the most quality. Once done, change your Middle Resolution back.
Turbo Mode: On. You definitely want this.
Frame Rate Throttling: Off. Double and triple-check that this is off. You won’t reach 90 fps with this on.
That’s it. Exit Menu and then restart the iRacing VR session. The Foveated Rendering settings you can change on the fly without having to restart a session. Keep adjusting until you get the settings that work best for your processor, video card, and eyesight.
iRacing Graphics Settings
I spent a day testing various settings and how they affect the FPS. Below are the settings I use with my 5800x3d and RTX 4090. With these settings, I can get a mostly solid 90fps, with 60 GT cars on the grid at tracks that are hardest on FPS (Nürburgring GP). I’m a road racer and don’t know the needs of an oval racer. You may need to change these to fit your requirements.
Enable SPS (VR): On for sure.
Reflex: Enabled+Boost. A must for NVIDIA cards.
Gamma, Brightness, Contrast: Personal preference. No measurable performance impact. Adjust them to whatever you like best.
With a 3080, I had these visuals on Low Detail or Off: Sky/Clouds, Pit Objects, Crowds. Grandstands I ran in low detail. There are some tracks where the grandstands serve as a brake marker. Event are the objects like tow trucks, stands, and other event support items. Set this one to your preference. If off, they can’t be used as a brake marker reference. My 4090 settings are in the image.
I use Draw 20(12) cars and Draw Min Pits on FPS-intensive tracks. This makes a dramatic difference in FPS. In my testing, I was gaining 10-20 fps with this setting at the race start. This will draw only 20 cars in front of you and 12 behind. It won’t draw any others. On the first lap you may notice cars disappearing if they get outside that 20-car limit. As cars spread out after lap 1, that quirk goes away and you’ll forget all about it. On many tracks, I use Draw 30 or 40 as well. It all depends on the track.
I use 63 for Max Cars but you may not need to. This is how many cars nearest you have their data transmitted to your computer. If you use Crew Chief or the Digital Race Engineer and want to know your position immediately, you’ll need to set it to 63. Lowering this number can give you some headroom on your CPU. My 5800x3d can handle 63 cars without a problem.
Dynamic LOD: This is one of the settings that makes the most difference to your FPS. If you have your other settings where you want them, this will automatically reduce those settings to give you the desired FPS, to a point. When I set this to 90, I didn’t get as good of FPS as when I set it to 88. At 88 my frametime shown via CapFrameX, an FPS capture tool, was a straight line. Meaning it wasn’t taking longer to do some frames and less to do others. It was optimized. Also, I didn’t notice elements jumping in and out of view like I thought I would. This setting is a must.
AA Samples / Mode: I tried 8x but it chewed up too much frame rate. Stick with a max of 4x.
Shadow maps/Cloud Shadows on: This one surprised me a bit. If I turn this on, but don’t check the boxes below it, it only costs 1 or 2 fps. Checking the two boxes below it can chew up 10 or more fps. On tracks that aren’t GPU intensive, I’ll check those boxes because I like the shadows of the cars in front of me. It adds to the realism. If you are having FPS issues, be sure Object Self Shadowing and Dynamic objs aren’t checked but you might still be able to have Shadow maps on.
Shader Quality: I didn’t see an FPS difference going to the next lower setting so might as well leave this cranked up.
Two Pass Trees: If you want fancier tries, this is the only one I recommend. The other two chew up too much FPS for any visual benefit. You aren’t going to notice trees blowing in the wind or shadowing when you are 3 feet off the bumper of the car ahead of you. I would leave this off with a 3080.
Cockpit Mirrors Max: I use 2. I know the image shows 4 but I don’t use that many (I’ll fix the image at some point). I use a Virtual Mirror up top and using 2 Cockpit Mirrors turns the door mirrors on. With a 3080, you might need to have this set to zero.
Anti-Aliasing: Off. Use the NVIDIA Control Panel setting for MFAA instead.
Sharpening: I’ll leave this one up to you. On some tracks, it will affect your framerate negatively, not massively but it’s there. Some people notice a difference in quality with it on. If you do, leave it on. If you don’t, leave it off.
HDR: This has a large impact on performance. You will notice the hit. I leave it off.
Redshift (CA) Correction
There is an issue with the Varjo Aero that causes a red/blue shift that, for some people in some games, makes red items seem to stick out of the “image plane” unnaturally. A tool has been created to fix this issue called RedShiftTester. After you use the tool to figure out your numbers, plug those same numbers into the same location in the OpenXR Toolkit once you have an iRacing VR session open. You only have to do this once.
My Testing Methodology
It isn’t easy testing FPS changes in iRacing unless the setting makes a big difference. I used CapFrameX, a tool that captures the FPS and provides very detailed information on averages, 1%, etc. In iRacing, I used the Nürburgring GP at Sunrise. I ran an AI race with 59 participants and, by skipping qualifying, I can force my car to start in position 30. To test a change, I grid and wait for my spotter to tell me the pace car is moving. At that moment I press a key sequence to start CapFrameX logging. It does this for 40 seconds. During this 40 seconds is the pace lap before the race. In this way, I make sure the events happening around me are pretty much the same for every test. If I tested during a race, cars around me, my view on track, all kinds of variables would change.
If you have questions, I recommend the Varjo Discord community.
Digital Race Engineer (DRE)
DRE is a companion app for iRacing that, in my opinion, really helps VR racers. With DRE you get a spotter and race engineer in one. Each with their own voice so you can easily tell them apart. I used to use Crew Chief but I like DRE better. It has more than 50 alerts and, if you choose to use them, over 400 commands you can issue via voice. This is the best part for a VR user. I have a button on my wheel that allows me to talk to DRE as I would in real life. I can ask for information, “Car Ahead Last Lap Time”, or tell DRE to do something, “Increase Brake Bias”.
The Spotter is better in my opinion than the one in iRacing. I can get a wealth of information and control how much I want. I’m a much more aware driver with DRE.
Give DRE a try. There is a free, limited version. I personally use the Performance subscription. Use the coupon code KENTBIGDOG10 and save 10% on your subscription.