Adaptive Timestepping Enabled as Default

Nice! Very good! I’m glad Roblox is getting better!

24 Likes

Only thing that’s currently stopping us from using Adaptive Timestepping is a weird issue we are experiencing with Gravity Coils in our game where it makes the players humanoid/camera sort of jittery.

We’re using VectorForce for this;
GravityCoil.rbxm (5.9 KB)

36 Likes

We tried to add this to our experience, Flooded Area, a few months ago, but it led to issues with boat stability and flinging. (our entire game is physics based and relies on BodyMovers unfortunately) While it did improve performance by a huge margin, it caused too many issues, so we switched back to Fixed.
With the improvements to BodyMovers, this may finally be a viable solution! It does appear parts are still flinging more often than usual, and boats can be a bit jittery at times, but maybe that’s just the price that has to be paid. I’ll update y’all if I find any more issues.

Thanks so much y’all!

23 Likes

After so many years… the physics are good now. I’m looking forward to more performance improvements! (also, south america servers when?)

29 Likes

I 100% think that characters should always be fixed timestep, or otherwise let us choose this behavior ourselves. Characters are very fiddly business, and last I checked, adaptive timestepping is still unstable with my custom characters, especially the ones that fly/swim.

28 Likes

Very nice, though @Onett (first part in your video) did a smart move and not physically animating bees anymore lol.
Just saying that animate your pet or morph system on client for better performance.

15 Likes

Is there going to be a way to enable old PhysicsSteppingMethod? because it really affects obbies

8 Likes

You should describe the bugs obbies have with Adaptive so that they can be fixed and the performance of obbies can be improved.

Also, Fixed is still available in case games are just broken with Adaptive, but in general I think people should always try to use the newer features like Adaptive and not use old systems like Body Movers.

8 Likes

there isnt any bugs, there is a different problem - it changes physics so that means some hard obbies can become completely impossible

8 Likes

also thanks for telling me about Fixed option, it tried it and it seems like that option doesnt really affect obbies so nothing breaks

7 Likes

There seems to be clipping issues when using Adaptive Timestepping on unanchored objects, specifically smaller ones. It doesn’t matter what the Collision fidelity is set to, they all seem to act strange and over time can even just fall through whatever they’re set on top of. Here’s a video showing it in action, the range of sizes on the y-axis for these mesh parts are between 0.2 - 0.09 studs:

Here’s the repro place file too:
Adaptive Timestepping Clipping Repro.rbxl (92.7 KB)

20 Likes

AlignOrientation still has issues with adaptive timestepping by not respecting its MaxAngularVelocity. It’s apparent in every place and here’s how to reproduce the issue: AlignOrientation: Differences Between Adaptive and Fixed PhysicsSteppingMethod - YouTube

I would love to switch but this is preventing me from doing so.

10 Likes

Adaptive is not supposed to change physics, it is supposed to improve performance, so if there are differences, then please describe them here!

5 Likes

I have a few issues that only occur using adaptive timestepping, making it unusable. Seems to only happen with small-ish parts.

Ores clipping into the ground, network owned by client.

Ores clipping through walls, network owned by client.

The issue seems to get a lot worse when the ores are network owned exclusively by the server:

5 Likes

https://gyazo.com/a2040dcf06ec6fb7ef028781c5147aff

1 Like

Hey! Sorry for the late reply. We will make sure to take a closer look at this behavior for your game, thanks for reporting this. We also released a small update for adaptive stepping involving humanoids, I’ll be interseted to hear if this led to any updates in your experience. If this issue turns is causing serous disruptions in your game, you can always set your stepping method to Fixed. Will keep you posted!

3 Likes

i appreciate the work being done here, but i wanted to put in my two cents. i did a little bit of testing on the potential effects of adaptive timestepping on my current project, and noticed some behavior that would be downright unacceptable in one of my use cases of a bowling minigame


while this can easily be brushed off as just a bug report, and the best idea in a vacuum is just to stay on fixed timestepping, i would much rather submit this as a suggestion to allow a bit more control over the adaptive timestepping. while this bowling game in particular requires such precise physics calculations, it’s part of a larger experience with many areas where adaptive timestepping would greatly benefit the performance. in my ideal scenario, i would love to declare just the bowling ball and pins to simulate at 240hz, while allowing the rest of the experience to remain on dynamic simulation rates. i understand if this is somehow infeasible or unreasonable, but i would appreciate if the idea was considered.

2 Likes

One really good option (imo) would be enabling us to manually set wich parts have fixed physics simulation. But at the same time i dont really know this stuff, maybe it isn’t even possible.

3 Likes

Hey everyone, thanks for all the feedback. Yesterday, we enabled additional features to ensure this change will cause minimal disruption to your experiences, especially humanoid related physics.

The tentative re-enabling of “adaptive” as the Default setting is scheduled at Aug 17. We would encourage everyone to try out the feature by setting the workspace PhysicsSteppingMethod to adaptive before the change is made. For any potential bug reports, my DMs are open!

2 Likes

This topic was automatically closed 120 days after the last reply. New replies are no longer allowed.