Avatar Dynamics Update

Strasz
VRChat
Published in
4 min readDec 17, 2021

--

Back in April during our Dev Stream, we announced that we were working on a set of features called Avatar Dynamics. The new Avatar Dynamic system opens up a ton of possibilities for creators.

Want to make it so people can boop your nose, give you a high-five with a satisfying crack, or make you self-destruct with the push of a physical button on your avatar? With Avatar Dynamics, you can do all that — and a ton more!

We know that this is one of the biggest features our users have been looking forward to… and asking for! It’s literally the #1 and #4 item on our Feedback board, and has been for a long time. We know a lot of you are eager to know how development is progressing, and we wanted to give you an update:

Want to know more? Here’s a brief recap of what Avatar Dynamics is:

PhysBones: A free, direct and significantly more performant (we’re talking roughly a 12–20x improvement) replacement for DynamicBones in VRChat that will be included with our SDK. Additionally, PhysBones allows touching, grabbing, and posing bones on your own avatar or on other people’s avatars!

“PhysBones on Quest when?!”, you ask? Preliminary tests show that we’ll be able to get Avatar Dynamics on Quest, although with tighter restrictions than we’ll have on PC (which we haven’t determined yet). So, short answer: yes, but you’ll have limits so you don’t steal frames or melt headsets.

Performance Boost: In our testing, PhysBones is several times faster than Dynamic Bones — anywhere from 12–20x faster (or more!) depending on several factors like hardware, the scene, and the avatar setup. In our testing, an example scene of 3200 bones with 4 colliders per bone ran 1600% faster than Dynamic Bones. Keep in mind: this performance boost still exists even when any avatar can interact with all PhysBones in the scene. Woah.

To reiterate, these performance numbers are highly dependent on a ton of things. Saying “12–20x faster” is us holding our cards close — we’re seeing significantly higher multipliers most of the time. Oh, and notably, this is our unoptimized version of PhysBones. We’ve still got some more to do. 😊

Finally, we’re working on building a set of best practices so that we can help guide creators to making their avatars as performant as possible while still having tons of freedom with our new PhysBones system. We’re learning a lot of lessons while we’re building and testing this system, so we want to pass the knowledge along.

Avatar Triggers: Triggers allow avatars to interact with themselves… or any other avatar! Grab your ears, give your friend a high-five, a pat on the head… or a slap in the face. Triggers work by detecting colliders on avatars. By default, all avatars will have standard colliders defined, such as the head or hands, but you’ll be able to set your own for specific interactions.

Permissions System: You’ll be able to control who you want to allow (or not allow) to interact with your avatar. You’ll also be able to opt out of the system, if you’d like your avatar to remain a bit more static!

Debug View: To make it simple to see what’s going on with your setup and uncover any problems, you can turn on a Debug View in your Action Menu that lets you see an overlay of PhysBones, Triggers, and Colliders. This view works in the editor as well as in VRChat!

Automatic Dynamic Bone Conversion: we want to make using PhysBones as easy as possible — and so the goal is that all avatars uploaded to VRChat using DynamicBones will be switched to PhysBones.

Automatic Collider System: we want to ensure everyone has the ability to interact with both Avatar Triggers and PhysBones, so a set of default colliders is added to all avatars even if a custom setup is missing.

Wow, there’s a lot going on. So, recap done. What’s been going on? PhysBones WHEN?

Behind the scenes, we’ve been testing, tweaking, and optimizing each of these new systems. While we know that you’re excited to play with a bunch of shiny new features, we want to make sure that the system is as easy to use (and as bug free!) as we can possibly make it.

To that end, we’ve been hosting a closed beta with creators of all skill levels from the VRChat community. Our team has already learned a looooot from this testing group, and we’ve been hard at work incorporating their feedback.

Thanks to the progress we’ve been able to make so far, we wanted to announce that Avatar Dynamics Open Beta is coming early next year!

While various teams at VRChat work on our other big projects, our Avatars Team is very focused on making sure that we can roll this out to everyone as soon as possible. We know the community has been hungry to get their hands on these features, and we’re equally as excited to get them out to you!

That’s all we have to share now, but look forward to hearing from us again early next year where we’ll have more to talk about as our Open Beta testing begins.

--

--