03-14-2023 05:15 PM
Hi community, I'm trying to get my Unity Quest 2 application (standalone) updating the headset refresh rate to the maximum available
Problem: Updating to any refresh rate higher than the default 72 causes the physics to start stuttering. When I grab an object with a rigidbody and start moving my hand I see it jittering/choppy movement
What I've tried: OBS shows the in game FPS is meeting the cap 72/90/120, and everything else except physics based movement is buttery smooth. My understanding is that physics has it's own timestep value `Time.fixedDeltaTime`. I tried updating that in my refresh rate code below:
Additional info:
My time settings
Unity Version 2021.3.12f1
URP
Any help is much appreciated, thanks
Solved! Go to Solution.
04-11-2023 01:39 PM
Thanks for all the comments/suggestions it turned out to be an issue in the framework I was using VRIF by BNG where the grabber had some settings called force physics grab or something
03-25-2023 09:35 AM - edited 03-25-2023 09:35 AM
I've previously been having serious stuttering issues, both physics and others. In the end I implemented 2 awesome solutions.
Firstly I made sure my movement code was the first script run before anything else.
Secondly I reduced the amount of gameobjects in the scene. As my game was procedurally generated I had to write some code that merged nearby meshes with the same material and rebuilt with a single meshcollider - luckily I was using low-poly texture mapped colours so that included pretty much everything non-interactive in the scene 😄 I went from 100s of gameobjects in view to maybe 40.
Of course, the same could be achieved for most games by manually merging objects in the 3D package of your choice. The point being is that for for mobile devices like the quest, too many gameobjects creates a lot of overhead.
03-26-2023 11:41 AM
This "might" fix your problem since you're talking physics. Under Rigidbody on your GameObject that you can grab, set the Interpolate property to Interpolate. It might be set to None.
03-28-2023 05:14 AM
Try matching your "Fixed Timestep" for the Unity physics system to match your new framerate. For example, if your framerate is 72 make it 1/72 (.013888889). If you change it to 90 fps, change the fixed timestep to 1/90 (.01111111)
04-11-2023 01:39 PM
Thanks for all the comments/suggestions it turned out to be an issue in the framework I was using VRIF by BNG where the grabber had some settings called force physics grab or something