Hello everyone.

The Mixed Reality Forums here are no longer being used or maintained.

There are a few other places we would like to direct you to for support, both from Microsoft and from the community.

The first way we want to connect with you is our mixed reality developer program, which you can sign up for at https://aka.ms/IWantMR.

For technical questions, please use Stack Overflow, and tag your questions using either hololens or windows-mixed-reality.

If you want to join in discussions, please do so in the HoloDevelopers Slack, which you can join by going to https://aka.ms/holodevelopers, or in our Microsoft Tech Communities forums at https://techcommunity.microsoft.com/t5/mixed-reality/ct-p/MicrosoftMixedReality.

And always feel free to hit us up on Twitter @MxdRealityDev.

Is something like SteamVR's Async Projection always on?

We have an app that was written for SteamVR, and are testing it on the Samsung Odyssey MRD headset. We are finding that the frame rate often fluctuates between 90, 60, and 45 fps, but rarely at a value in between. I am wondering if there is something like Steam's Aync Reprojection or Interleaved reprojection (or ASW on Oculus) always on for a MRD headset? In the SteamVR's settings, "Async Reprojection" is "off" when we run our app, and the checkboxes to allow reprojections are also off (makes not difference in the frame rate as far as I can tell)

If there is some kind of frame-rate limiter always on, is there a way to turn it off when running through SteamVR? We would like to get raw performance numbers so that we can directly measure the performance impact of the Samsung headset so we can determine how & where to optimize to hit 90fps all the time.

Answers

  • Hi we have escalated your problem to our team who works on steamVR bridge. This may cause some delay. Sorry for that.

  • The confirmed that the frame rate is locked to the refresh rate of the display. So you will never be able to go over 90 FPS on very performant systems. There is no way to change this behavior.

    Using the Device Portal you should be seeing what frame rate your app is running at.

    Performance recommendations for immersive headset apps

    If you just want to know if your app is under budget, you can go through that performance doc and ensure you are hitting a constant 60fps on a Intel Nuc i3.

  • It's not that we are over performant, but under. We know that we will be less than 90fps, but we are trying to get more precise numbers, so we know how close we are. The frame rate dropping from to 45 fps does not tell us as much as knowing that we would be at 85 fps would, in terms of how much we need to drop visual quality to meet the performance marks.

    In more detail: We optimized to hit 90fps on Oculus with a Titan X card, and we want to know how much slowdown we incur because of the higher res and field of view on the Samsung, and if we incur any slowdown because of OpenVR and MRD layers. With the FPS just going to 45 in both cases, we cannot really tease out the differences.

    We can use the GPU profiler, but that only really tells us about our own GPU usage, it is much harder to quantify application + SteamVR + MRD layers as a whole because of the stalls due to waiting for the vsync.

    In any case, It appears that the answer is "yes" that there is a frame rate lock to 45 fps if 90 is missed, and there is no way to get an unlocked frame rate count, so we will need to go down the deeper profiling route to get this information. If that is correct, please confirm and I will mark your reply as an answer.

  • Hi Noirsoft,

    Sorry for the late reply. Did you take a look at the webpage that Akira linked in his post? On that page there are two other links that will let you get a better feel for the actual framerate.

    "holographic frame duration, or, in Unity, checking the device’s refresh rate."

    Please check out these links and let me know if you have any questions.

    Thanks,

    James

Sign In or Register to comment.