collapse collapse

* Recent News

* Recent Posts

Stability Issues with CPU/RAM/Mobo by Tbone
[November 03, 2022, 08:50:24 pm]


randomness by Strod
[October 13, 2022, 01:18:03 pm]


The Quest Pro by Strod
[October 13, 2022, 01:16:51 pm]


No Man's Sky Beyond VR by Tbone
[September 24, 2022, 04:47:52 pm]


Half-Life 2 VR mod by Tbone
[September 24, 2022, 04:47:10 pm]


Quest 2 Link Best Settings (Finally Better Than Rift S) by Tbone
[August 28, 2022, 01:40:10 pm]


Quest Headsets Will No Longer Require Facebook Account by Tbone
[July 07, 2022, 03:17:21 pm]


Been AWOL by Tbone
[May 14, 2022, 01:26:00 pm]

Author Topic: Quest 2 Link Best Settings (Finally Better Than Rift S)  (Read 3210 times)

Offline Tbone

  • FA FOUNDER
  • Administrator
  • *****
  • Join Date: Apr 2004
  • Posts: 9956
  • Probably Rifting
    • View Profile
    • http://www.thefuriousangels.com
Quest 2 Link Best Settings (Finally Better Than Rift S)
« on: December 15, 2021, 04:09:59 pm »
I've had a Quest 2 and Rift S for a long time, using the Rift S for PC gaming and Quest 2 for when I go out of town. I had tried Air Link to compare and the quality was horrible, so I stuck with Rift S. Well, there's been a few patches since then and I've finally sat down and tried to tweak the Quest 2 for PCVR. The Quest 2 has the better screen, so if you can get everything else out of the way, the Quest 2 can become one of the best PCVR headsets you can own. Getting there is a bit of a journey, but here's how...


  • Use a Link Cable, not Airlink
Yes, yes, I know. You want the freedom of wireless. You can do that, and you can THINK the quality is good enough, but be aware there are big tradeoffs. What we're attempting to do is crank up the bitrate to remove any and all artifacts, crank up the resolution to take advantage of Quest 2's pixels, and crank up the refresh rate to improve the overall experience. There's no way to do all three with Airlink, and certainly not at the threshold we need to meet. I got a cheap Link Cable for $16 and so far it's working great!

  • Oculus Device Advanced Settings
And so our balancing act begins. Let's get this out of the way. 120Hz refresh rate is great and can feel very smooth, but it's experimental for a reason. In my opinion the tradeoffs are NOT worth it. You'll have to lower the resolution to try to get a steady 120fps, and it actually drains the Quest 2's battery quicker (more on that later). I have a 3080 and still decided against 120Hz. As a result, my settings are:

Oculus Desktop Menu - Devices - Quest 2 and Touch - Advanced - Graphics Preferences

Refresh Rate (90Hz)
Render Resolution 1.5x (5408x2736)

You want to crank that resolution as high as your computer can stand. This is the best place to supersample, though you can push it further using OTT or ODT. 90Hz is a higher refresh rate and, therefore, an improvement over the Rift S, but you can lower it as a compromise if you have trouble getting the frames.

  • OTT or ODT Settings
Ok, here's where we're gonna get rid of the Link artifacts. You have two options. I recommend downloading Oculus Tray Tools but you can also browse to your Oculus installation and find the Support folder, Oculus Diagnostics folder, and use OculusDebugTool.

In OTT click "Quest Link" on the left menu. You'll find similar settings in ODT:

Distortion Curvature: Low (more detail in the peripherals)
Encode Resolution: 3970 (may need to be lower if lesser graphics card)
Bitrate: 550
Link Sharpening: Enabled

Having the bitrate at 500 is important here. It gets rid of all streaming artifacts and achieves the same fidelity as if you were plugged into the graphics card itself. Any lower and you'll notice an annoying shimmering blockiness, especially on things in the distance. Even 400 will not cut it. Priority is to keep this at 500! OTT will default back to 300 when you restart it, so I would check ODT to make sure it's staying at 500 and, if not, make sure to set it in ODT so that it sticks.

In OTT go back to Game Settings. You can optionally set Default Super Sampling here if your graphics card can handle it. This will multiply with the resolution you set in the Oculus settings, so be very conservative here. I've set my default to 1.2, but for games such as HL: Alyx or Lone Echo 2, I'm leaving this at 1.0. If you click "View & Edit" under Profiles you can change the super sampling per game using OTT. This requires a bit of trial and error, but it allows you to really tweak the fidelity per game.

  • SteamVR Settings

The above settings will kill your performance in SteamVR as any attempt at supersampling from Steam's software will multiply what you've already done, tanking your performance instantly. Our goal here is to set the SteamVR settings as close to baseline as possible and let the Oculus software do all the heavy lifting. Unfortunately, it's a little counter-intuitive and took some trial and error and Googling on my part, but here's what you want:

SteamVR Settings - Video

Refresh Rate: 90 Hz (should be automatic)
Render Resolution: Custom
Resolution Per Eye: 62% (2556x2580)
Advanced Supersample Filtering - Off
Overlay Render Quality - Medium

Your impulse is going to be to leave "resolution per eye" to 100%, but this is actually supersampling what you've already done. 62% is the closest real resolution to the Quest 2, and so you want to force that setting. I'm not certain what "Advanced Supersampling" does, but I'm just getting rid of any supersampling Steam is attempting. "Overlay Render" probably doesn't make a difference, but I'm just trying to avoid any hiccups when menu hopping.

You could stop right here and be good to go. Your settings may differ from mine, but I believe the priorities are:

Bitrate 500 > Render Resolution > Super Sampling > Refresh Rate

If you're sensitive to a lower refresh rate and really want that feeling of smooth presence, you may want to sacrifice super sampling before refresh rate - just remember 120Hz is currently a trap. There are also other ways to make the Quest 2 closer to feature parity with the Rift S...

  • Comfort
This is actually pretty important as the default headstrap for the Quest 2 is abysmal. I personally recommend a Halo style 3rd party strap for the Quest 2 to get it feeling like the Rift S, but I've also heard positive things about a simple head pad for the back of the strap as well. Some sort of counterweight on the back of the strap is also helpful, but this is where things get complicated. I had to 3D print an external battery mount that would be compatible with a Halo strap since the adjustment dial is directly on the back, but I believe there are now options of getting a Halo strap with battery holder already included.

Both the Rift S and Quest 2 lack headphones, and I recommend getting some Porta Pros and zip tying them to the sides of the strap (works for Halo - not so much of the OG strap of Quest 2). This improves the audio quite a bit! I also recommend feeding the Link cable to the back of the strap and attaching it there so that the weight of the cable pulls at the back of your head and not the side of your face. It's a lot of work, but the end result is a HUGE improvement in comfort!

  • Downsides
There are a few caveats to using the Quest 2 as your primary PCVR headset instead of getting an expensive one designed solely for that purpose. One major drawback was already mentioned - the amount of modding needed to make it comfortable and improve the audio. This, however, would be an issue even if you were using the Quest 2 as standalone, so it's something you'd want to deal with either way if you already have one.

The other glaring issue is the battery life. Despite the Quest 2 being plugged directly into the PC, it seems it still doesn't charge fast enough to stay at 100%. Your headset will still slowly drain while playing and plugging it into the PC takes up the charging port, so there's no way for you to have an all day marathon session. This is another reason to avoid 120Hz, as it drains even faster. I still need to do more testing to see how much it drains, but after 2.5 hours of watching a movie it was at 49%.

Finally the Link cable itself can be a bit of a crap shoot when looking for third party. This one has worked well for me so far, but they can be fickle and the official one is still a whopping $80. If you have trouble, try Google for a solution (I had to disable Air Link on the Quest 2 to get regular Link working).
« Last Edit: February 08, 2022, 05:25:25 pm by Tbone »

Offline Tbone

  • FA FOUNDER
  • Administrator
  • *****
  • Join Date: Apr 2004
  • Posts: 9956
  • Probably Rifting
    • View Profile
    • http://www.thefuriousangels.com
Re: Quest 2 Link Best Settings (Finally Better Than Rift S)
« Reply #1 on: December 28, 2021, 01:04:48 pm »
Updated the original post. Changes:

-Supersampling is now going through Oculus settings and the render resolution first to optimize performance. Instead of setting OTT settings to 1.4-1.7, you'll be looking at 1.0-1.2 while setting the render resolution to 1.5 in Oculus' app settings.
-Added SteamVR settings that are required to get good performance for SteamVR games and apps.

Offline Tbone

  • FA FOUNDER
  • Administrator
  • *****
  • Join Date: Apr 2004
  • Posts: 9956
  • Probably Rifting
    • View Profile
    • http://www.thefuriousangels.com
Re: Quest 2 Link Best Settings (Finally Better Than Rift S)
« Reply #2 on: January 19, 2022, 04:08:34 pm »
Some more advanced tinkering...

First, I've noticed using OTT to super sample can cause all sorts of issues with Oculus Dash, so for now I'm keeping that set at 1.0. Instead I'm sharpening with a different program while using foveated rendering to improve performance. It doesn't work with every game and the foveated rendering only works with Nvidia RTX cards, but for the games it does work on it allows me to set my refresh rate at 120 while also getting a sharper image.

Program: https://github.com/fholger/vrperfkit
Reddit Post: https://www.reddit.com/r/OculusQuest/comments/s7lghv/vr_performance_toolkit_combines_openfsr_and/

You'll have to install PER GAME. Copy the dxgi.dll and vrperfkit.yml in the folder of the .exe of any game you wish to apply this to. Edit vrperfkit.yml (using Notepad or similar text editor) for the settings you want.

So far I've found the foveated rendering enough to give me a nice performance gain, so rather than upsampling I'm using the other half of the tool just to sharpen. To do all this, I change the following settings:

upscaling method: cas
renderScale: 1.0
sharpness: 0.5 (still playing with this)
fixedFoveated enabled: true

For a more detailed explanation... CAS is the sharpening method of upscaling. RenderScale typically will render at a lower resolution and then upscale, but setting it at 1.0 will prevent it from rendering at a lower resolution. Sharpness applies more or less sharpening between 0.0 and 1.0.

My advice if you want to use this tool...

Nvidia RTX users: CAS sharpening and foveated rendering
Non-RTX for performance gain: Keep defaults to use upsampling.
Non-RTX for image clarity: CAS sharpening

If you want to see if it works in the game, you can use the hotkey CTRL+F1 to see if a red ring appears in the periphery. I'm not sure if this only works to show foveated rendering or works regardless.
« Last Edit: February 08, 2022, 05:24:44 pm by Tbone »

Offline Tbone

  • FA FOUNDER
  • Administrator
  • *****
  • Join Date: Apr 2004
  • Posts: 9956
  • Probably Rifting
    • View Profile
    • http://www.thefuriousangels.com
Re: Quest 2 Link Best Settings (Finally Better Than Rift S)
« Reply #3 on: May 19, 2022, 04:20:32 pm »
I'm in the process of revisiting these settings again. The question is whether 3970 encode resolution width and 550 encode bitrate is wasted performance. Some seem to think the Quest 2's decoding is locked into around 300, so increasing the encoding past that won't help. I seemed to notice a difference between even 400 and 550 when I made this post, however, so I'll have to look at it again. Quest 2's native apps render at 3660, so the theory is going above that isn't worth it for the width, though I've also seen that, due to the native resolution of the actual panel, going to 3970 can have benefits.

Either way a more safe baseline where you won't hit too much in the way of diminishing returns would be bitrate to 350 and encode resolution width to 3664.

Offline Tbone

  • FA FOUNDER
  • Administrator
  • *****
  • Join Date: Apr 2004
  • Posts: 9956
  • Probably Rifting
    • View Profile
    • http://www.thefuriousangels.com
Re: Quest 2 Link Best Settings (Finally Better Than Rift S)
« Reply #4 on: August 28, 2022, 01:40:10 pm »
Updated current settings:

Bitrate > Resolution > Supersampling > Refresh Rate

My settings for Nvidia 3080



OCULUS DEBUG TOOL

Distortion Curvature: Low

Encode Resolution Width: 3940

Encode Dynamic Bitrate: Disabled

Dynamic Bitrate Max: 0

Encode Bitrate (Mbps): 480

Dynamic Bitrate Offset (Mbps): 0

Link Sharpening: Enabled

Mobile ASW: Disabled



OCULUS DEVICE SETTINGS

Refresh Rate (90Hz)

Render Resolution: (3456x1744) 0.9x



OCULUS TRAY TOOLS

Super Sampling: 1.45 (I start there and adjust depending on intensity of the game using the Profiles). If you use Steam regularly instead, you can also super sample within Steam settings per game. I like to use Oculus Tray Tool's Visual HUD - Pixel Density and Performance to see how close I am to the Quest 2's actual resolution and how my performance is being affected.



VRPERFKIT

Google it. You need to manually put two files in the directory of each game you want to use this on. If you have a video card that supports it, you can get fixed foveated rendering and some sharpening. Currently my settings are:

upscaling

enabled: true

method: cas

renderScale: 0.95

sharpness: 0.9

radius: 0.6

fixedFoveated

enabled: true

innerRadius: 0.6

midRadius: 0.8

outerRadius: 1.0



Note that you don't have to do ALL of these things, but if you leave something out, you'll want to adjust elsewhere. For instance, if you aren't going to super sample and apply sharpening, then just crank the resolution scale up instead. You'll notice my resolution is at .9x scale, but that's simply to give me more room to super sample and save a little performance at the same time. Obviously if I cranked my resolution up to 1.7x then my super sampling would need to be completely different or be left out completely.
« Last Edit: October 03, 2022, 05:34:34 pm by Tbone »

 

 

* Discord

Calendar

November 2022
Sun Mon Tue Wed Thu Fri Sat
1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 [30]

No calendar events were found.

* Who's Online

  • Dot Guests: 21
  • Dot Hidden: 0
  • Dot Users: 0

There aren't any users online.

Social

 
SimplePortal 2.3.6 © 2008-2014, SimplePortal