Are There Issues With RDNA3 and VR?

Maybe spoke too soon. Now I can't seem to disable ASW - get an error message from OTT saying "Failed to change serviceasyncronousspacewarp to 1".

Does Oculus force ASW to on if framerate drops too low?

I think so. Try changing the refresh rate to 72?

ctrl-keypad1 is the way to disable ASW using keyboard controls.
 
Bit more testing to feedback on.

The Oculus debug tool seems to be a bit fussy. The bitrate and ASW setting can be changed 'live' but the encode resolution cannot (requires service restart, disconnecting your headset). When this happens, ODT won't then let you change ASW (comes up with an error). But closing and reopening ODT then lets you change it again. I think restarting the service must give control of ASW back to Oculus software, so then you have to close and reopen ODT to give control back to that.

On ASW itself, there appears to be some kind of default fall back. If I turn off ASW (and confirm this via the ODT overlay), I can happily get say 50fps and it doesn't force my framerate down to 40. But if I get too close to 40, something is then locking in the framerate at 40fps even though ASW is still showing as disabled. However, when this happens it is still smooth with no artifacting, so its fine. In contrast, when the proper ASW setting is enabled, I do get some artifacting going on. So whatever this fallback framerate lock is, it seems to work better than ASW itself.

Ive tested various bitrates which you can change live. Starting low so you can see what to look for, most of the compression artifacts are gone by the time the bitrate is above 100, but there is still a little banding. 200-250 the banding is gone too. I can't see any difference going above 250.

I have now set the render resolution in the Oculus software itself to the maximum of 5408x2736, at 80Hz (a setting of 1.4x). This appears to give much sharper results, and better performance, than leaving it at 1.0 and using the MSFS supersampling slider, which I now leave set to 100.

I tried changing the encode resolution width. The Quest Link won't even connect with it above 4000. I have it set to 3648. Not sure if this is a headset decoding limitation. Question I have is if I am rendering at 5408, but the encode resolution width is set to 3648, am I not simply wasting some resolution there? Or does rendering at a higher resolution than the encoder runs at help the encoder generate a better image?


So at these settings (5408x2746, encode 3648, bitrate 250, ASW off), and in MSFS with TAA on, terrain and object LOD on 100, buildings, trees, grass, clouds, textures etc set to high, some other settings on such as ansiotropic filtering and other things on, I can still get around 50 fps looking in the air or it locks in at 40fps if I look down at the ground. It feels very smooth and the sharpness is very good. No artifacting. In heavy areas I would expect to come under 40fps though at these settings I think.

I now need to see whether I can dial back some settings and still be happy with the visual quality. As previously explained, at more around 1.0 on render resolution and settings around medium, I can get 80fps. Which I think is very good.


So can the 7900XT handle VR? I would say if I can get 50fps in MSFS with settings on high and 1.4X render resolution, or a solid 80fps at slightly lower resolution & settings, then in that demanding game that is a very strong result. I am getting no performance problems with the device itself as far as I can see. And no obvious problems with the encoder other than I can't use H265 (have to use H264, H265 is visually completely broken).
 
Further results:

DCS World.

Can't get the performance overlay to show in game, so don't know true FPS but just taking off and flying round it's really smooth so I think I'm getting around the 80 FPS setting. Cockpit is sharp, scenery is more sparce than MSFS but I think that is just how the game is?


Elite Dangerous.

Bit strange this one, as I'm getting 60fps all the time, when my headset is set to 80Hz. My monitor however is a 60Hz freesnyc, so is it locking to my monitor FPS?

Game perfectly sharp and smooth though, don't think I can get any sharper visuals.
 
Bit more testing to feedback on.

The Oculus debug tool seems to be a bit fussy. The bitrate and ASW setting can be changed 'live' but the encode resolution cannot (requires service restart, disconnecting your headset). When this happens, ODT won't then let you change ASW (comes up with an error). But closing and reopening ODT then lets you change it again. I think restarting the service must give control of ASW back to Oculus software, so then you have to close and reopen ODT to give control back to that.

On ASW itself, there appears to be some kind of default fall back. If I turn off ASW (and confirm this via the ODT overlay), I can happily get say 50fps and it doesn't force my framerate down to 40. But if I get too close to 40, something is then locking in the framerate at 40fps even though ASW is still showing as disabled. However, when this happens it is still smooth with no artifacting, so its fine. In contrast, when the proper ASW setting is enabled, I do get some artifacting going on. So whatever this fallback framerate lock is, it seems to work better than ASW itself.

Ive tested various bitrates which you can change live. Starting low so you can see what to look for, most of the compression artifacts are gone by the time the bitrate is above 100, but there is still a little banding. 200-250 the banding is gone too. I can't see any difference going above 250.

I have now set the render resolution in the Oculus software itself to the maximum of 5408x2736, at 80Hz (a setting of 1.4x). This appears to give much sharper results, and better performance, than leaving it at 1.0 and using the MSFS supersampling slider, which I now leave set to 100.

I tried changing the encode resolution width. The Quest Link won't even connect with it above 4000. I have it set to 3648. Not sure if this is a headset decoding limitation. Question I have is if I am rendering at 5408, but the encode resolution width is set to 3648, am I not simply wasting some resolution there? Or does rendering at a higher resolution than the encoder runs at help the encoder generate a better image?


So at these settings (5408x2746, encode 3648, bitrate 250, ASW off), and in MSFS with TAA on, terrain and object LOD on 100, buildings, trees, grass, clouds, textures etc set to high, some other settings on such as ansiotropic filtering and other things on, I can still get around 50 fps looking in the air or it locks in at 40fps if I look down at the ground. It feels very smooth and the sharpness is very good. No artifacting. In heavy areas I would expect to come under 40fps though at these settings I think.

I now need to see whether I can dial back some settings and still be happy with the visual quality. As previously explained, at more around 1.0 on render resolution and settings around medium, I can get 80fps. Which I think is very good.


So can the 7900XT handle VR? I would say if I can get 50fps in MSFS with settings on high and 1.4X render resolution, or a solid 80fps at slightly lower resolution & settings, then in that demanding game that is a very strong result. I am getting no performance problems with the device itself as far as I can see. And no obvious problems with the encoder other than I can't use H265 (have to use H264, H265 is visually completely broken).

Just replying to everything in a quick and random fashion! Apologies in advance!! :)

It's always better to set the the resolution in the Oculus app as high as it can go before messing around with super sampling in Steam VR or the game you are playing.

Leave the Encode resolution width at 3664. That's native. Anything higher will look worse and perform worse. Just in case you are wondering, it's the horizonal resolution of one eye. The Oculus app slider is for both eyes. So the 5408 is really 2704 x 2.

Not convinced that AMD has entirely solved the encoder problem either. There are a few people I know with 7900 cards who are having problems with the H.265 encoding. And despite all the claims otherwise I still think it's limited to 200Mbps even over Link cable. I have a 6900 and a 2070 super. I can't really tell the difference on the 6900 if I go over 200Mbps. While on the 2070 Super, it struggles after 350 but there is a difference between 350 and 250. Not so on the AMD card.

It does the depend on the game as well. Just extreme example, Rec Room, there is no difference at any bitrate. However on Skyrim VR you can easily see the PQ improvements as you increase the Bitrate. It's probably the best game to use to check the bitrate changes.

Back to ASW and the Oculus Tray Tool. The OTT is convenient but can be buggy at times. And, Meta really want to make it as difficult as possible to turn it off. As lower fps and refresh rates are a serious cause of VR sickness. It's a pain having to turn if off time but sort of understandable why they do it.

Your only solution buy a 4090 :p :D

The 7900XT seems to be plenty powerful now that AMD has sorted the VR performance out. What settings to use? Well, I would always set the Render Resolution at the highest it can go, then work on the in game settings from that baseline. It will always be clearer and sharper the closer you get to native resolution. So slider completely to the right in the Oculus app and set the Encoder resolution width to 3664 in the debug tool. Also in the Debug tool, enable or disable link sharpening based on your preference.
 
Back
Top Bottom