VRChat April 2021 Dev Stream Recap!

VRChat
VRChat
Published in
18 min readApr 20, 2021

--

If you missed it, VRChat recently held a Developer Stream on our Twitch channel. In these streams, we show off what we’re working on, what’s coming soon, and what to look forward to releasing in VRChat over the next year or so.

It was a ton of fun! Despite a little roughness around the edges (it was live, after all), the feedback we’ve been getting from the stream has been very positive! For those that tuned in, thanks for watching.

However, for those that missed it (or couldn’t spare two hours, understandably!), we’ve put together this recap of what we went over! This post doesn’t cover every small detail, so please check out the full video if you’re interested in the big picture.

Let’s get started!

Dang, It’s Been a Bit

To start things off, Ron and Tupper came on to chat a bit with the viewers.

At VRChat, we often see that we don’t share much about what we’re working on. Part of this is due to the team being pretty small! However, thanks to VRChat Plus, we’ve been able to expand our team quite a bit, which lets us move more quickly!

However, with this Dev Stream, we decided to pull the curtain back quite a bit! That does mean that these features (and their release dates) are even more subject to change than usual. Keep that in mind.

Obviously, the community is an extremely important part of VRChat! We read all of your feedback, take as much of it into account as possible, and feed it back into our roadmap and planning phases. Many of the things we talked about on the stream were the direct result of feedback given to us.

Thank You to our VRChat Plus Supporters!

As you’ll see mentioned a few times in the stream and this recap, a lot of what we’re doing is a direct result of the support we’ve received via VRChat Plus.

Thank you to everyone who has supported VRChat and its continued development!

Recent Server Issues

After that, Tupper invited System to talk about our recent server issues.

As you may know, we had some server issues back in the beginning of March. This was caused by our Presence system getting overloaded! This system keeps track of user status, instance, friends lists, that kind of thing. When it got overloaded, we were forced to disable some pretty important parts of VRChat (the friends list!) in order to keep the rest of the service running. Obviously, this workaround wasn’t going to work for long.

We needed to spend some time revamping it. However, development bandwidth is a precious resource! We needed more people, fast.

Thanks to VRChat Plus, we were able to expand the size of our API team and scale up quickly! Those additions to our team (plus other changes) allowed us to quickly revamp the Presence system with a much faster and robust implementation that will let us scale to many more users.

Here’s our API Team inside of our totally real, canonically-accurate server room.

System went on to explain that this is a part of growth. You’ll build something, and it’ll work great for a bit — until you grow past it. The curse of popularity!

System went into a lot more technical detail, if you’re interested in that kind of thing! Check out the VoD Link to watch the full section, which includes a bit of a tech dive.

Squashin’ Bugs

It’s no secret: VRChat has its fair share of bugs, some of which we’ve been carrying along for far too long. We’re acutely aware of this.

Tupper (our Community Manager) spent some time organizing bugs into disruption and frequency. Using this, we were able to prioritize the existing bugs based on how painful these bugs were to our community.

We’ve put aside some feature development time in order to work out some of the biggest bugs in VRChat. Here’s the top three bugs we’re going to be jumping on first:

  • The “Audio Bug” — When you lose voice audio but lip sync still works, usually needs a full restart to fix.
  • Social Menu Bugs — Friend info in the Social Menu can get out of date, show friends offline when they aren’t, and/or other bugs.
  • Avatar Load Hitching — Over time avatar loading has become slower, and the application hitches when most avatars load.

Here’s some more examples of bugs that we are aiming to work on after those top three:

  • Getting stuck at 100% when loading worlds and/or avatars
  • Seeing stuttery IK on other people after being in an instance for a while
  • Station bugs. So, so many station bugs. STATIONS!!!!
  • FBT bugs including, but not limited to: Spine breaking, viewball sinking into chest, spine-chest joint bend issues, stretchy arms/legs/neck, “headpat misalignment”
  • The “11 FPS Bug”
  • Gradual FPS loss in long-running instances
  • Not being able to use the Quick Menu when falling

Check out the VoD Link to see the full section on our bug squashin’ effort!

New UI

Next, Rocktopus and Technobabel came on stage to chat about our New UI.

We’ve been bringing parts of the updated UI to VRChat in pieces over time. The next big piece that we’d like to add is the new Quick Menu!

For clarity, the Quick Menu is the menu that pops on on your hand when you press the Menu button. The Main Menu is the one that appears when you click “Worlds”, “Avatars”, “Social”, etc.

We also plan on adding a special tab to the new Quick Menu that world authors can fill out with world-specific controls. Here’s some possible examples of what that could look like:

We’ll be releasing the Quick Menu revamp first. After that, we’ll follow up with revamping the Main Menu in Phase 2, along with improved discoverability and Social menu improvements. Finally, we’ll implement some nice customization, the ability to hook into the Quick Menu via the SDK, and more!

Here’s the plan for releasing the New UI changes:

Notably, Phase 2.5 comes with the ability to build and use custom skins as well as integrate world functions into the Quick Menu!

Check out the VoD Link to see the full section on the New UI!

Avatar Dynamics

Tupper invited Kiro up to the stage to talk about Avatar Dynamics.

This one is pretty big, so we just made a video to walk you through the basics. Here’s a video to start:

There’s a lot going on here, way more than just moving hair around. This system is not Dynamic Bones. It uses VRChat Physics Bones, a new system provided by VRChat in the SDK for free! It is set up on avatars in a similar way to Dynamic Bones, but there are some major differences.

Of course, the first difference is that you can interact with other avatar’s Physics Bones! This is a long-requested feature that we’ve been having a ton of fun with. You can simply push around someone’s hair, animal ears, or tail — or you can grab them and pose them, if they’ve allowed you to!

Next, VRChat Physics Bones are much, much faster than Dynamic Bones. Our initial testing showed them being up to 10 times faster in equivalent setups. This is fast enough that they might even be considered for release on Quest. We’ll also be able to allow more of them in the Avatar Performance Rank System due to the speed increase!

Another benefit to the new system is the ability to animate on top of the Physics Bones. This is not possible with Dynamic Bones.

Finally, we’re investigating automatic replacement of Dynamic Bones with VRChat Physics Bones. The settings don’t match up exactly, but we’re working to see how close we can get them to match up.

Avatar Triggers

As seen in the video above, there are special interactions that happen with boops, bonks, and more. This is powered by a new system called Avatar Triggers! You’ll be able to define these points on your avatar that do certain things when you or others interact with them. In the video, we showed off “booping” Kiro on the nose, “bonking” him on the head, or even pulling out a hammer and smacking people on the head with some particles and a sound effect.

This is a powerful system with a lot of possibilities! It will tie in with the VRChat Avatar 3.0 system and permit complex behaviors. In addition, we plan on implementing some basic “default” interactions, such as high-fives and more.

Further Development

There are more possibilities that we’re looking into and experimenting with! Here’s what we mentioned in the stream.

  • VRChat World Interactions — Head and hand colliders could go beyond avatar interaction, and allow avatars to push buttons, interact with objects in worlds, and more!
  • VRChat Cloth — Physics Bones aren’t meant for cloth, and neither are Dynamic Bones. Unity Cloth is OK, but what if we made our own system for proper cloth on avatars?
  • Avatar Dynamics Permissions — Obviously, you should have full control over who can interact with your avatars. We’ll be including a permissions system to handle this.

Technical Points

There were some technical details that we felt it was important to get out of the way early on.

  • Most Avatar Dynamics systems will only work on Avatar 3.0 avatars. There are some exceptions that may work on AV2 avatars, like: automatic hand colliders, any default Avatar Triggers we create, and automatic Dynamic Bone replacement.
  • If we don’t automatically replace Dynamic Bones with Physics Bones, touching, grabbing, and posing will only work with Physics Bones, and not Dynamic Bones.

Check out the VoD Link to see the full section on Avatar Dynamics!

Identity Update

Next, Mr. Squiggly came on to talk about an upcoming VRChat update due out in the next few weeks: the Identity Update!

We’re working to improve the way that people can represent themselves in VRChat. The Identity Update is coming very soon to VRChat, and will enable many new features to help with showing a bit more detail on yourself! Some of these features will be available to everyone, and some will be VRChat Plus exclusive benefits.

Oh Right, We Have User Bios

You know how on the VRChat Home website, you can write up your own bio? A short blurb of text where you can put whatever you want? We’re adding it to the VRChat application!

With the Identity Update, you’ll be able to write your bio either on the website or in the application, and show it off in your user profile in VRChat! The bio has been on the website for a while, and we’re happy to finally get it a bit more visible. Everyone gets this!

Profile Image

Your current VRChat avatar has always been the source of your user image that pops up on the social menu and on the website. In the Identity Update, VRChat Plus supporters will be able to set a gallery image as their Profile Image!

This Profile Image will appear in place of the avatar thumbnail in the Social Menu, Profile Page, and on invites. You’ll be able to remove your Profile Image and go back to using your avatar thumbnail at any time.

Image Gallery

Want to whip up a REALLY fancy invite image for your party, or really make your profile image pop? Well, VRChat can now store a gallery of images for you! You can take these images with the VRChat camera, or upload them from the website. You can then use these images as invite images or as profile images!

This is going to be launching as a VRChat Plus benefit initially (because all the things you do with these images are VRChat Plus benefits), but the Image Gallery may go out to everyone in the future.

Status in Nameplates

For a long while, VRChat has had the “status” feature, which permits players to write a short bit of text that appears in your user profile page. Well, that’s kind of out of the way — so we thought it might be cool to make it a bit more visible.

With the Identity Update, you’ll be able to see the Status of each person on their nameplate! You can use this for anything you want — introduce yourself, tell people what you’re up to, or whatever you like!

By default, Status will only show when the Quick Menu is opened. You can change the nameplate settings so it is always shown, or even hide it completely. Oh, right — everyone gets status on their nameplates!

Increasing Favorite Friends/Worlds Slots

We don’t have specific numbers on this yet, but we’ll be increasing the maximum number for both your Favorite Friends and Favorite Worlds slots. Everyone gets this!

Check out the VoD Link to watch the full segment on the Identity Update!

Groups

Next up, Tupper and Ron chatted about Groups.

VRChat is growing really fast! Finding people that share similar interests can be pretty tough right now, and we want to make it easier. We want to help people self-organize, and Groups is a major upcoming feature that will make this a lot easier.

In fact, we’ve been thinking about Groups for quite a while. Here’s a high-altitude look at how we think Groups will work right now.

  • Groups have leaders!
  • Groups have officers/moderators/etc.
  • You can join, leave, or follow groups.
  • Groups can be private, public, or something in between.
  • Groups have identity! Images, logos, links, etc.
  • Groups are easy to discover, or can choose to not be discoverable.
  • Groups and members of groups have some privacy settings which permit them to show or hide certain parts of Group membership.

We still have a good amount of work to do involving Groups, but we wanted to give you some ideas of what’s coming. It’s one of the next major additions that we plan on making to VRChat. Expect to see the first parts of Groups to release this year.

Check out the VoD Link to watch the full segment on Groups!

Creator Economy

In the next segment, Mr. Squiggly came back on to talk about the Creator Economy.

Lots of people create lots of things in VRChat. Not only do people create worlds or avatars, but there’s also streamers, entertainers, video authors, dancers, event hosts, musicians, comedians, roleplayers, tool builders — anyone who creates anything in VRChat is a VRChat Creator.

A core goal for VRChat has always been to enable VRChat Creators to earn from the things they create in VRChat by allowing people to support those creators.

There are a lot of options that we would like to explore when it comes to enabling creators to earn. With that in mind, the first option we’ll be working on is User-to-User Subscriptions.

A VRChat player will be able to subscribe to a creator and pay them a certain amount of money each month. Creators will have various systems to recognize and reward their supporters. Creators will also be able to cash out real money, not a virtual currency.

The Creator Economy is one of the most important things we’ll be implementing into VRChat. As such, we’re doing our research! We asked for feedback from selected creators, and also from the general community. You can deliver that feedback at our survey form!

We had a lot of examples given in the Creator Economy section. Out of all the sections, this is one of the most important we delivered! It would behoove you to take look at the full segment at this VoD Link.

Udon and the VRChat Dev Labs

Next up, Momo came up to chat about Udon and the VRChat “Dev Labs”, our experimental R&D section of VRChat.

Let’s start off with a bunch of announcements to cover in regards to Udon, world creation, and experimental features!

Udon Networking Update

Momo first spoke about the VRChat Udon Networking Update! This update brings a ton of new features, fixes, and changes to Udon.

This is in Open Beta right now, and is releasing soon!

This update is pretty massive and includes:

  • Synced Arrays
  • Object Pools
  • Easier support for late joiners
  • In-world debugging tools to monitor bandwidth
  • More variables, quicker updates

A lot of these changes are quite technical in nature, but needless to say “UNU” (the Udon Networking Update) will open up a ton of new options for VRChat World creators to work with Udon.

Persistence

Persistence is the next big Udon feature coming after the Udon Networking Update. We needed to get the Networking Update out first in order to be able to do Persistence properly. As you’ll see below, we’re breaking persistence into two sections: World Persistence and Player Persistence.

World Persistence

When you join a world, you can save different variables to a “save slot” that you have — and then reload that save when you create a new instance!

This will permit players to “save” the state of the world they’re in, and reload it later. This will make it very easy for creators to make long, creative, and complex games or experiences that users can enjoy, leave, and come back into without having to worry about losing their progress!

You can save and load things as complex as the state of a full adventure game, or as simple as the position of some pillows.

For creators, this means your worlds will have all synced variables saved. Handle the values on world load, and apply or reset them as needed.

Player Persistence

Player Persistence is the other part of Persistence. As a VRChat player, you’ll be able to save your experience points, high scores, player stats, and more!

As a creator, you’ll gain the ability to attach a “Player Program” to a user. This program is defined as an Udon Program that is created for each player in your world. You’ll be able to easily retrieve this program and read from/write to its variables! These variables will be loaded when the world loads, and saves on each variable change.

VRChat Package Manager

The VRChat Package Manager is a standalone application we’re developing that has many functions!

Primarily, the Package Manager will keep your VRChat SDK updated, so you no longer have to worry about updating it manually.

In addition, you’ll be able to add sources to find amazing community-created tools, prefabs, programs, and more!

SDK Iteration Speed

We know as developers, the quicker you can get to your world, the easier it is to build & debug the things you’re working on — so we’re working on some updates to Build & Test to make that process smoother, as well as In-Client Debugging!

Build and Test

In a future update, Build and Test will have better support for reloading the current scene you’re testing in all of your open test clients. In addition, we’ll let you define custom launch parameters, as well as launch into multiple profiles.

World Debugging

Finally, we showed off the first stages of a world debugging system that should make it much easier to ensure your world is working properly, with tools to fire off events and teleport around your world for testing!

World Jams

We’re going to start a series of VRChat World Jams!

A World Jam is a time-limited creation challenge with technical and creative themes. After the theme has been revealed, a starter project will be posted. It will contain a scene all set up ready to test, build, and publish!

You’ll have some amount of weeks to make a world that fits the themes. Focus on making something that explores the theme — try learning something new!

You’ll submit your world to the Jam via the web, and we’ll visit your world and consider it for inclusion. We’ll publish a World Row with our favorites, skipping you past Community Labs!

Momo reiterated that when participating in a World Jam, it is important to focus on “making an experiment, not a masterpiece” — so get out there and try some wild ideas!

We have our first World Jam coming up in May! If you’re interested, keep an eye on our Twitter and Discord server.

Little Bits

In addition to all this upcoming stuff, Momo talked about a few additional features on the way in our Little Bits section.

Dynamic Images are due out after the New UI is released, and will permit creators to load an image from a URL using Udon.

Graphics.Blit is a powerful function that we’re opening up to be used in Worlds!

Finally, List<T> support in Udon is something we’re working on… unless it blows everything up. It’s a pretty big addition!

VRChat Dev Labs

Finally, Momo chatted with the stream about the VRChat Dev Labs, where we experiment with lots of cool ideas and see what sticks to the wall.

Moving forward, we’d like to try out showing off some of the experiments and other changes that we’re exploring. Nothing here is guaranteed to make it into a release, but there’s a bunch of cool stuff to check out!

One of the first things we explored in the Dev Labs (and have a pretty solid plan on releasing) is OSC control in VRChat — including sending and receiving signals! Momo showed off some of these experiments and what’s possible with OSC — from facial tracking to motion control and more!

Before hopping off the stage, Momo showed off some more additions the VRChat Dev Labs have been exploring — a new smart Stream Camera using Cinemachine that avoids objects and clipping in a third person view, and VR “vignetting” or “tunneling” intended to reduce VR sickness.

If you want to learn more about the updates coming to VRChat Udon or what we’ve been trying out in the Dev Labs, watch the full segment at this VoD Link!

Regions

To wrap things up, Tupper gave some details on some final news items.

Thanks to the incredible support that we’ve received through VRChat Plus, VRChat is looking into adding regional servers for VRChat! This will help to lower latency for users that are interacting within those regions!

We’ll be launching with two new regions to start:

  • Europe
  • Japan

There’s still some more work to be done with Regions — namely how we’re going to show it in the UI. We’re hoping to have Regions implemented in VRChat within the next few months!

VoD Link

Unity 2019

We’re planning to move to Unity 2019 in the near future! Unity 2019 includes a ton of improvements to the runtime and the editor (everyone gets dark theme! MY EYES), and is the next Long Term Support version of Unity VRChat will be moving to.

We’ve been maintaining a build of VRChat on Unity 2019 for a few months now, and it is working fairly well. There are a few bugs we’re still sorting out, including some we may need to contact Unity to handle.

Either way, expect more info soon regarding an Open Beta and an eventual release!

VoD Link

Account Security

As a quick public service announcement, we reminded our community to keep their accounts secure! Many accounts are lost and compromised due to weak passwords that users re-use on other services. Ensure you use strong passwords that you don’t re-use anywhere else, and never share your passwords! There are great free software options to help with this, like Bitwarden or OnePass.

As a reminder, VRChat offers two-factor authentication, and it’s been improved a lot recently! It’s becoming much smarter (less annoying) about not bothering you for new 2FA codes when they aren’t needed.

VoD Link

VRChat is Growing

Lastly, we want to mention that VRChat is growing at a pretty amazing rate. We’ve been breaking records every weekend, and we’re thrilled to see so many new people coming to VRChat. Last weekend, we broke our concurrent user record with 45,200 users online!

We’ll continue growing thanks to your support, including bringing more people onto the VRChat Team! We don’t have any specific positions posted at the moment, but please email us at jobs@vrchat.com if you think you’d be a good fit somewhere! We’ll be updating the Careers page in the future with more info.

VoD Link

WHEN???

Finally, we shared a quick slide that answered the burning question everyone had: “WHEN???”

Phew, I think that covers all of it!

Thank you for reading, and thank you again for all of your wonderful support! We’re all very excited for the future of VRChat, and are looking forward to getting these features out to our community as soon as they’re ready.

We’ll see you on the next Dev Stream!

--

--