Developer Update - 14 August 2025

Welcome to the Developer Update for August 14!

Today’s featured world is Dream Ocean by Shinyflvres.

Announcements

Film Jam is Ongoing!

Get those cameras rolling!

In case you missed it, we’re running our first-ever Film Jam from August 4 - September 1!

Read the rules and guidelines on our blog post, linked above. There’s a VRChat badge, VRC+, and more in store for the winners! But most importantly, we want you to have fun :3c

If anyone has any questions about the jam, feel free to ask in the Filmmakers of VRChat Discord or in the VRChat Discord (#vrchat-jams).

Web Updates!

  • We identified and fixed an issue which would get users stuck in a loop between the login page and their intended page.
  • The Event Calendar’s week view should no longer be missing events which are in the same week but a different month.
  • Fixed an issue which prevented accepting an invite to an invite-only group from the Group page.

Farewell to SDK2

About four years ago, we shared that SDK2’s time was coming to an end. We also let you know that, eventually, uploads with SDK2 would be turned off.

That moment is almost here! In about three months – on November 3, 2025 – SDK2 uploads will be switched off.

After that date, you won’t be able to upload, tweak, or update SDK2 avatars or worlds. The servers will reject any SDK2 uploads.

Over the years, SDK2 has been a big part of VRChat’s history, but it’s also held us back – slowing development, adding extra QA work, and keeping some stubborn performance issues alive. Moving on will help us make VRChat faster, smoother, and ready for new possibilities!

Good news: your SDK2 worlds and avatars will still work after November 3. But since you won’t be able to update them, future VRChat changes or new features could break them – and you wouldn’t be able to fix them. :cry:

We don’t currently plan to block SDK2 content from loading entirely, but if something major goes wrong and we run out of options, we might have to. Our goal is always to preserve your creations for as long as we can.

Now’s the time to bring your projects into SDK3! If you can’t migrate, make sure your SDK2 content is polished and updated before November rolls around.

Avatar ID Generation

In the next SDK update, we will be implementing a security change that impacts the avatar uploading process – but only in some very specific circumstances.

For most people, you can just read this: If you upload your avatar via the VRChat SDK, simply clicking on the good ol’ “Build and Publish” button, then this does not impact you at all!

However, if you use or have created a tool to batch upload many of your avatars at once, it might affect you!

For tool creators, here’s what you need to know:

For any SDK tool that uses the SDK’s native BuildAndUpload feature:

  • For new avatars, nothing will change!
  • For updates to existing avatars, you’ll need to ensure you’re correctly passing the Avatar ID via the VRCAvatar struct.
    • This is already how it should be done, so if you’ve kept up, nothing should break here!

For any tool that manually calls the SDK’s Build and Upload methods:

  • For new avatars, you’ll have to reserve an Avatar ID via the API using the VRCApi.CreateAvatarRecord method. We highly encourage using a combined BuildAndUpload method, which takes care of that for you.
  • For updates to existing avatars, you’ll need to ensure that you’re passing the Avatar ID in the VRCAvatar struct (same as for BuildAndUpload).

Addressing Some Avatar Marketplace UX Issues

We’ve been working hard at improving the Avatar Marketplace!

While we have some things cooking behind the scenes, there’s one small change that we’re fast-tracking, as we’ve seen it pop up in a couple places.

When selecting a button, the “Details” button was larger than the others, which folks felt was an odd choice. So we’re changing it!

The details button will be moved down and replaced with an “Apply” label for an avatar that you own – or a “Purchase” label for ones you don’t. Simple!

This change will be in an upcoming release.

Conclusion

That’s it for this week! See you on the 28th!

8 Likes

Ngl I thought SDK2 uploads had been blocked for years already lol

4 Likes

我一直以为SDK2已经无法使用了….

SDK2 has not been updated but uploads have still been permitted.

The change we’re announcing today is that we are going to block uploads completely as of the date in the post!


SDK2は更新されていませんが、アップロードは引き続き許可されてきました。

本日発表する変更は、投稿内の日付をもってアップロードを完全にブロックするというものです!

1 Like

In our RP community, there was an update that affected many avatars to be listed as “Poor” due to a fake light asset that VrC is flagging. I personally checked someone’s avatar and there was absolutely no lights on the avatar nor animations. What gives?

1 Like

If SDK2 keeps VRChat performance low and yall want keep old worlds, can’t there just be old VRChat client branch that is meant to play old worlds and stable one that is meant to play current nice and well optimized features.

2 Likes

Remember to read the patch notes.

Changes & Fixes

  • The client now uses the performance stats determined by Server Processing. This does a better job of calculating VRAM use by detecting Material Swaps, so avatars using that technique may have a different rank in-client.
    • This means that, in some cases, your performance rank might be downgraded.
      • Keep in mind, however, that this is because the information being provided is more accurate, not that our standards have changed

Without more information, or Avatar IDs to check, it is hard to say more than that. But I assume this is your issue.

Probably easier if you make a thread on the VRChat Discord server’s #community-support forum. Then we can discuss it there, since it seems off-topic for here.

I haven’t confirmed this, but I assume that this probably isn’t on the table. Maintaining an old version of an application is not free - you have to have developers, QA, and other team members ensuring that the old version still works, that the servers still communicate with older versions properly, etc.

I totally get the idea and feeling behind it, but I’ll make the assumption that we don’t have the ability to do this kind of work.

Was the “fake light asset“ a particle system that spawned a light?
That was a way to hide lights from the safety system before, but it still cost the same as a real light.

Right, some network code should be split up in case of new updates to not break old client and client-server loop itself should not be changed to not break stuff yeah that can be pain I see

Speaking of batch uploading. Will vrchat add a way to do multiple avatar uploads at the same time without tools like vrcmultiuploader?

SDK2 should not take performance it still same Unity engine, and they way simpler in structure, only thing that may may be slow SDK2 worlds use animations extensivly and some other hacks used on them to do advence things normally not possible and SDK2 avatars are normal avatars just you can swap only gesture animations, you can do more laggy things in SDK3. Notnto mention practicly only old public avatars use SDK2 and not much people using them anymore, worlds you need to go willingly does not matter

I understand it’s no perfectly simple, but I could see a way that this could work with very minimal overhead. Essentially, a standalone branch (perhaps a completely separate download) that can only access SDK2 worlds on the servers. Frozen in place, no updates needed, purely archival in nature

Is there any chance of integrating SDK2 features into the current version with improvements? Some of these features made world creation significantly easier compared to SDK3, especially for those who are not Unity developers with coding knowledge. It was not very user-friendly for beginners :sweat_smile:

I suggest creating a version compatibility branch to ensure that SDK2 worlds and avatars can still be used. I understand that maintaining this branch will require resources, but it’s important to recognize that VRChat’s growth and success are largely due to SDK2. Alternatively, could consider having a trusted, self-funded community manage this branch if the DEV team is unable to spend on the resources.

1 Like

Going to miss SDK2. It had a much lower barrier to entry than SDK3 ever has (or will, with the direction it is taking) A lot of the greatest worlds this platform has ever seen were created with SDK2’s simple yet powerful tools. SDK3 offers a lot more freedom with Udon but a lot of the tools from SDK2 are flat out missing in SDK3 which forces creators to have to recreate them with Udon. I really wish SDK2 had merged with SDK3.

3 Likes

My page for uploaded avatars is missing though?? How do I fix that I play on quest 3 and don’t have a pc

In the post I just said there was no animation set for the light to spawn, and in the particle it was not even enabled.

NGL, a LOT of current SDK2 Avatar Uploads are broken from recent VRChat updates (about 90% of my uploads are older SDK2 avatars from over the years, and the majority of them won’t load/error-bot/stopped loading previews, while giving a (?) instead of an avatar rank) is there any hope that these issues will be resolved before the cutoff date? or would older SDK2 avatars have to be scrambled to be reuploaded before the cutoff date using the “Current” SDK2/Migrated to SDK3, just to preserve the older uploaded content?

It’ll be a sad day when classic maps like treehouse in the shade will no longer work. I’m glad we still have it for a while yet to come. Hopefully, new updates don’t break it any time soon.

3 Likes

I will keep trying.