Animation Throttling is Moving to Opt-out

One thing I’d like Roblox to be more transparent about is what scenarios are currently preventing a feature from becoming a “seamless engine feature”.

This would help me as a developer make sure that specific issues that might not have occurred to me, or have not been flagged during testing, are not currently affecting me.

2 Likes

Question, since this needs the new animation bug fixes to work, does that mean the new system is being put to opt out? Also I recall you said Roblox is working on a solution due to the amount of games the “bug fix” will break.

Will we be getting an update on the animation weight blend fix system soon?

Thanks @ItzMeZeus_IGotHacked! Fixed.

Correct, @AirWward! These animation improvements only apply to the client, and should only apply to objects that are not locally simulated. Therefore, replication of animations should not be affected, and objects that are locally simulated (like your player character, for instance) should still animate at full speed.

Thank you for this change I kept trying to enable AnimatinThrottling on one of my places but everytime I reopened studio it was just set back to default so it never really worked :confused:

Since this is strictly a performance update which sacrifices visual fidelity for performance, and does not introduce any new features, will this permanently remain an opt-out/in feature, or will it be forced after some time like most other opt-in/outs?

In my opinion, performance updates like this should never be forced and should be left up to developers to utilize or not.

Hi @Otuomi , if I understand correctly, you’re asking what would happen to constraints that connected to a bone that’s throttled? The simulation of constraints should not be affected, since the LOD controller does not affect locally simulated objects. In other words, this change shouldn’t affect the way you work with constraints, or change their behavior.

Hey folks! We updated the post - the feature is now live. Reminder that if your place has Workspace.ClientAnimatorThrottling set to Default, it will now have animation throttling enabled!

I’m not quite sure I understand. If I had an accessory attached to a bone then, i.e. a wristwatch attached to a wrist bone, would it disconnect from the wrist then? From what it sounds like, it seems constraints will still move normally regardless of whether the bone is throttling or not.

I tried it again, but it still gives me an error page.

This doesn’t mean anything for me if I don’t use animation objects for non-player characters in my games, right? Just making sure.

Correct. This only affects Model instances with an Animator descendant.

Thanks for clarifying! The constraint will not move independently from the bone. The wristwatch accessory using a constraint will appear in the correct position along the wrist of the character, even if the bone it is constrained to is throttled.

1 Like

Does this affect GetMarkerReachedSignal and GetTimeOfKeyframe? My game depends on them.

Thank you for the clarification. I still just use spinning around the Motor6D joints.

I operate on “if it isn’t broken yet, why replace it with something fancier?” and that particular thing has been working fine for my use cases since 2008. lol

image
For some reason, my game is soft-locked to “Default”, which I’m not interested in.
Every time I change to either “Disabled” or “Enabled”, then save, then re-open, it’s back to “Default.”

This feature is highly destructive in my game, as it ruins the immersion we’re trying to create.
robloxapp-20220409-1332500 Dinosaurs near you, including yourself, for some reason get treated as if they’re 300 studs away, after a certain threshold since joining.

Ontop of that, it seems to be completely random too. Within your vicinity could be 10 dinosaurs, but only 3 of them playing at 5Hz, while the rest play at your FPS.

1 Like

Hi @Jaco2811, the team has been looking into this and found that this is not related to the new animation throttling. The throttling continues to occur even if you disable it the Workspace.ClientAnimatorThrottling property. The issue seems to occur when using RigidConstraint.

Check out this post related to this issue: Skinned Animations Rendering Issue

We’ll also take a look into why the property gets reset back to default every time you reopen the place in Studio. Thanks for letting us know!

1 Like

Yea, we do use RigidConstraints. (For an important feature, so not possible to remove.)
Good luck finding a fix!

Thank you for your time.

  • Jaco
2 Likes

Ahhhh gotta love the performance improvements.

1 Like

Hi Kyle, this change should not affect the GetMarkerReachedSignal() and GetTimeOfKeyframe() methods.