Animation does not play when player is not within field of view
closed
ueheua
I am not sure if this behaviour is a recently introduced feature to improve performance.
When my avatar is outside of another player's field of view (bounds not intersecting), the animations I have configured in my animator controller either:
- Not play if the animation was not active the moment my avatar went out of the field of view
- Play endlessly if the animation was playing the moment my avatar went out of the field of view
Can the animator be updated even outside of field vision if it is near to the other player?
Otherwise can a new parameter be introduced when the animator goes out of the other player's field of view so that I can turn off the animation and not be a nuisance?
Log In
Dexvoid
marked this post as
closed
Hi, thanks for your report and apologies for the time it's taken to reach it.
You're correct that this was a deliberate change to boost performance in VRChat. This change was made because animators on avatars tend to be amongst the worst offenders when it comes to poor performance in instances.
You should build your animator controller to handle the fact that it will not be running at all times. To do this, you can use the IsAnimatorEnabled animator parameter, which is documented in the page I've linked to below.
This parameter switches from false to true for one frame before your animator gets culled as someone loses sight of an instance of your avatar, which you can use to stop looping effects and so on. This parameter will switch back to true as the animator becomes unculled and starts running again.