Welcome to the Developer Update for 7 December, 2023!
Today’s Dev Update features the world Snowpeak Retreat by Rum Ham, and avatars by TerraReef and Nae the Loud. It’s gettin’ pretty chilly out there, so sidle up to the outdoor fire pit, grab a drink, and warm up with some friends.
If you’d like to catch up, you can read our previous Developer Update from 22 November.
Important Info / Announcements
VRChat Mobile no longer requires VRC+!
We’re moving VRChat Mobile from Alpha to Beta status! What the heck does that mean?
You can now use VRChat on Android without having a VRC+ subscription!
We were always gonna do this, we were just waiting to get the app to a point where we felt good letting everyone use it. VRC+ users are more engaged and know how VRChat works, so we knew they’d have good feedback (you did!!) and you’d be tolerant to a bit of jank (you were!!).
However, with the release of the Native UI, we think we’re ready for a fresh round of users. Keep an eye out for new friends on VRChat Mobile! They’ll look like Desktop users but with “Android” on the nameplate. Be nice to them, and show them around!
Show them the magic of VRChat and what got you to stick around.
This change should be live VERY soon if not now, along with some communications on normal channels (Twitter, Discord, etc).
VRChat 2023.4.2p1 and p2 released!
We released patches! They had some stuff. P2’s probably the last patch of this year. See ya later, 2023!
New Years 2024 SOON!!
Submissions for VRCNYE 2024 have closed! We got a TON of posters, 11+ hours of video, amazing booths, and a secret special guest to model the “rooftop hangout” section in the NYE world.
We’re reviewing content now and making the hard decisions of what posters we can slip in.
Expect to see more announcements as we come closer to the event!
Content Gating Changes
We released Content Gating! But then, we tweaked it a bit.
The system is meant to be forced on for all users under 18. However, as it turns out, a lot of people did not put their correct age in, and we severely underestimated how many (legitimate!) cases of people putting in the wrong date existed.
So, we need to go back and implement a way for people to rectify errors in their personal information (in this case, their age) in a way that satisfies both safety and regulatory requirements.
As such, the age-based forced content gating is disabled for now, but will be returning early next year once our processes have improved.
In addition, due to overzealous tagging, the categories “Extreme Horror”, “Excessive Gore”, and “Extreme Violence” were removed from the age-based forced gating. We found that people were “too careful” with their tagging – and content that would go too far in those categories wouldn’t be allowed in VRChat anyways.
That last bit is subject to change as we work on the system, but we thought we’d let you know.
Ongoing Development
What the heck does “Security Checks Failed” mean
So some of you might’ve seen avatars with “” and “” characters on the thumbnails. What the heck are these?
These are the output of our content scanning system. A “” means the avatar hasn’t been scanned yet. “” means it failed. If there’s no mark, it passed!
Failed? Failed what?
Failed our security checks! In addition to determining avatar stats (so you don’t have to calculate it), our system also checks for various malicious patterns that show up in crashers. Bad asset bundles, egregious memory usage, that kind of thing.
If the avatar fails that check, it won’t be visible in VRChat.
Why are you doing this?
In short, we’re using this system to reduce crashers in VRChat. It’s been working for a while now and it is pretty dang good at its job.
What are the limits?
We’re not sharing that at this time, but they are very high limits. They are likely to be adjusted quite often, too, as we tweak to avoid false positives.
Oh. Cool. How do I know if something failed?
In your own avatar list, you’ll see a in the corner of an avatar that’s failed checks.
The avatar won’t be usable, and the UI will display “Security Checks Failed” when selected in the menu. This’ll work both on your avatar and on the avatars of others when you click “View Avatar Details”.
My stuff failed, but it isn’t bad! Its not a crasher bro i swear just show my avatar
That’s fine! We are fully expecting some false positives.
If you have an on an avatar you uploaded or see “Security Checks Failed”, please contact our Support team with the avatar ID, and they’ll pass it on to the relevant team.
You can also see this on the site if you try to view the avatar ID.
Head-Chopping, Reverts, and more, oh my
No decapitations here. In 2023.4.2, we made some changes to how constraints in mirrors work, and also how they interact with our internal “Head Chopping”, i.e. scaling down the head bone so you don’t see your own eyeballs from the inside (because that is terrifying). This was done for performance, and we did see an actual performance improvement by doing so!
We did, however, also see a lot of feedback that this broke certain features on existing avatars, like hoods, snouts, hair, glasses, etc. that were using constraints to “undo” our internal head chop. Thus, we reverted that change for now in 2023.4.2p2
.
So, we will be working on a custom solution!
VRCHeadChop
We’re working on adding support for customizing how your avatar’s head appears in first person!
This is a fairly specialized use case for avatars currently achievable using Unity constraints - we’re now looking at adding this use case to the SDK in an official way to help make this technique more accessible and performance friendly. This will involve a new component added to the avatars SDK named VRCHeadChop
.
In the demo video above, the hair and ears are kept visible while the rest of the head is scaled away.
A few extra details:
- You’ll be able to add multiple head chop components to your avatar if there are multiple bones you want to control.
- The head chop component can be toggled on and off via an animator, where a disabled component won’t scale its transform away.
- If all of the head chop components on an avatar are turned off, the entire head will be chopped as usual (until any of the components are turned on again).
- You could use this to make expressions toggles that turn parts of the head on and off, for example.
- None of this will change how your avatar appears in mirrors or to other users – it’s applied from your first person perspective only.
Once that has been out for a while, we are considering reimplementing the original constraint fixes, since they do improve performance. We will take extra care to keep as much functionality as possible this time around, and by then also hopefully the new officially supported component will have gained traction
Oh, also, I’ve been told to mention “therians” here, for furry brownie points.
nVidia Variable Rate Shading
Nvidia VRS Foveated Rendering wises fwom the gwave!
This one was a little contentious since we initially announced it, before realizing we’d have some incompatibilities with the single-pass instanced stereo we were hoping to move to. Some stuff has happened since then that frees us up to continue investigating it!
Here, have some cool images, taken in Chromatic Frequency by Axinovium:
You can read more about nVidia’s Variable Rate Shading here.
We’re doing experimentation with VRS right now, hopefully for public release eventually. Don’t have any scheduled release date yet. We just think it’s neat.
Conclusion
That’s it for this Dev Update!
We’re skipping our next Dev Update, because its smack-dab in the middle of the holiday break. Take a breath, take it easy, drop by the VRChat NYE2024 event!
We’ll see you next year, on January 4, 2024, for what’ll probably be a pretty lightweight Dev Update.
Thank you!