Developer Update - 9 April 2026

Say that only Poor or better are allowed. This means that everyone in the instance is forced to not see any users avatar that is Very Poor and will only see their fallback/impostor.

Same goes if the minimum is Medium or Good. Any avatars below that rank, in that instance that has the flag set, will only be visible to the user using that avatar. It will fallback for all other users.

It’s the same functionality as if you had the shield setting configured (default) for viewing that user’s avatar and blocked Very Poor in your Avatar settings in the big menu. Except it is strictly enforced for all users in the instance and you can not override it by showing their avatar.

Honestly, this is a large part of why people are forever fighting about what the acceptable range is. Currently, a humanoid avatar with clothes and visual fidelity that is considered acceptable for the year will hover around ~100-150k. It’s very easy to do less and even make it look good, but they typically won’t meet the quality people expect in this current year. You can ask people to lower their expectations, but that never happens peacefully. Other groups, particularly ones that don’t wear pants often (or even clothes!), easily hit 70k and under with high tri-density.

What I don’t like about this update is that it is very 80+ event instance focused. I understand that’s where the metrics are, particularly for the more regular casual user base, but my VRChat experience never ends up in those, nor do the people I might join on.

I would at least like the option to set a customizable limit for some of the avatar stats, instead of simply relying on rank. Something like a max VRAM value, polygon count, or whatever I feel is appropriate for the time. It would age far better than having to wait for VRChat to change performance rating values, and it would be far more applicable to smaller instance sizes.

1 Like

What I don’t understand is, as a user with a furry avatar (mentioned above), my poly count is 47,775. I have a body, hoodie, two pants, ears, custom hair, and a couple accessories. I simply do not understand how typical humanoid avatars are managing over 70k when furry avatars, in my experience, are more detailed.

Granted, my avatar isn’t as insanely detailed as many others. But still. Oftentimes you are taking a detailed mesh and then baking it onto a less detailed mesh. This is how most game assets are created (at least in more detailed pipelines) and is a big reason why normal maps exist in the first place. It makes me think that these high poly avatars are simply being made from scratch with a ton of polygons and there is no optimization step being done.

God well isn’t this gonna be my crashout thread huh. For context I maintain my own green opti avatar and I have for years. Its not the hardest thing to do, you just treat stats as a budget and not a suggestion. My avatar is actually pretty feature complete with a deployable object and 5 outfit pallet swaps fitting in the 75MB limit. It also includes some OSC QoL things like PTT for discord and other tools.

Aight card/spec wise I have an RX 7600 (8GB card), 32GB of ram and Ryzen 7 3700X. Let just ask does anyone enjoy having to fall back on things like avatar culling, fallbacks and imposters? I tend to be very physical when it comes to VRC doing things like dance events, raves and working out. But I wont lie that it kind of sucks the soul out when I do have to see a field of blue culled diamonds because everyone’s avatar runs so poorly. Its almost like some people treat their performance stats as a leaderboard with how high they can get. And I have dealt with the worlds of “It runs fine on my machine”. God imagine a busy place like SHELTER_, Tube or any other rave where we are all densely packed and you could comfortably show more of the room.

As far as “raising the poly count” I have two points on this. The first is I believe its also a limitation of how Safety system is handled. The reason Good, Med and Poor share the same poly count is so safety levels can easily enable and disable features accordingly. If med or poor had a higher amount of poly count, then safety would have to decimate in real time to work which can cause a whole bunch of issues with things like rigging, UV maps, ect. My second point is even if the poly count was raised to 80k, another 10k to work with… people would complain that it isn’t 100k and we are just doing this dance again.

1 Like

sigh idk about you but I get by with 2.2k poly to spare on green ranks.

1 Like

Wonderfully said. This is basically the exact sentiment I had through this whole conversation.

Avatar creators and asset creators should have a pipeline that allows them to make highly detailed objects, but leverage normal maps + baking, as well as UV plugins to help improve overall quality without needing so many polygons.

There really isn’t a reason for any base model avatar (without clothes) to be more than 50k. I refuse to believe that these creators, who are making these massively detailed models, are incapable of using standard asset pipeline features/tools to optimize their assets before release.

I brought up the Overwatch model earlier because it really is a testament that it works. I’m not saying we need to crunch a ton of detail into 25k, but I am saying: If Blizzard is able to make tracer look so detailed, even close up, then why are we struggling to get below 70k?

For reference, here is a render I did in Blender with that tracer model I mentioned.

Sorry but I must insist on letting me able to see any avatar I want, I am choosing by my own free will to show an avatar that I truly want to see when I am meeting someone cool and the feature will still be active as everyone else that I am not interacting with and are using non optimized avatars will still be impostors. Not only that but some groups will 100% start to charge money from letting your avatar be shown, the current system is just extremely restrictive and distopian.

The green one you posted earlier correct? This isn’t a knock at you, but the level of detail looked fairly basic compared to what’s currently being sold. It’s decent, and something I’d personally find acceptable, but from a marketplace standpoint, where you’ll be competing against other sellers, it’s mostly made up of primary shapes, with minimal secondary shapes and variance, which doesn’t look as great. And yes, normal map baking is still being done for tertiary shapes or smaller.

Again, what is being made, sold, and uploaded is largely driven by demand and competition.

I suspect a lot of the detail you see on furry avatars are either from the texturing on the body (where skin would generally be,) or just the groups you hang around. There is some heavy bias there if you only hang around creator spaces.

Typically a VRChat avatar is going to have a body under the clothing, while the game model will not. The only way you’ll see that level of optimization is if the entire avatar uploading user base suddenly decides to optimize (and even retopo) for each piece of clothing they want to upload. That simply isn’t going to happen.

1 Like

this is exactly what I did to my green avatar before decimating her. Anything covered by her crop top, sleeves and pants are all deleted before hand.

And to be clear. I did not go through and retopo my model either afterwords. It was the same poly density from the very poor version before the decimation. CATS makes this lovely and easy to be honest with a 70k button.

Also you won’t need to optimize every avatar in your collection. I have a handful of green and yellow avatars I can bounce between. Some off the shelf of booth/gumroad/jinxxy, some done myself because I do go to events that will enforce performance ranks or in general I wanna be seen by more people, and being lighter helps.

But that doesn’t mean I’m sticking to these avatars 24/7. I work events, hang out with friends and so on so of course I’ll be back in my very poors during ‘down time’

Though if we wanna make an argument about ‘demand’ and ‘competition’. Congrats we have a new demand and there were plenty of green avatars if you knew where to look already.

Yes. I understand. But still. My avatar is honestly still somewhat excessive on polys. Most of the detail on these complex models wouldn’t really account for that many extra polys.

You’re telling me a body costs over 40k polygons? Not to mention that the context here, again, is public events. Who needs a full body and multiple complex clothing options/accessories for an event avatar?

yeah lol

Like, it shouldn’t be that common, but it absolutely is unfortunately.

womp womp.

2 Likes

agreed, its a skill issue :sweat_smile: unfortunately i just don’t have the blender skill to optimize bases as much as I’d like. Usually I can only get them to around 40k, maybe 35. Still manage to fit into the 70k limit but yeah, bases are heavy and difficult to optimize.

i use all the tricks you mentioned, the bases are just a rough start lol. thats kinda my broader point; even if it shouldn’t be, most bases off of gumroad and jinnxy start at 40k on the low end.

20-30k for the body, close to that for the head, and even more for the hair. Again, this is what is considered standard, and not a made-for-event avatar. Obviously people are bringing these avatars to events, otherwise we wouldn’t have a need for this feature.

They’re also not going to optimize them, touch Blender, or do anything even remotely close to dev-work. They’ll just add some clothing and hit upload.

Honestly, much of the conversation here about optimization is just basically useless jer- I mean bragging by several people. Yes it’s generally easy for me, or anyone else to do, but the general population isn’t going to do it. Hell, many of the very poor avatars being used at these events come with green-good versions that aren’t being used.

3 Likes

Bragging, like done by dark - is definitely not going help their point. Especially with how that avatar is.

2 Likes

Yes? What’s on your mind?

Up to 30k for the head is a lot though, my entire avatar top to bottom is below 25k and even with that I overdid some spots. Where are all the polys going to?

This can be easily reduced and improved, I’d be interested to look at the wireframe of it. You as an avatar creator have the power to be the positive change that is needed, and it can be achieved with little effort.

Everyone has different requirements.

This is especially true when considering how topology and distance lead to significant variations in judging both the geometric structure and the visual value of an object.

These factors make assessment or automated simplification extremely difficult.

It is similar to how people believe that baking can replace all dynamic scenes or dynamic calculations.

However, dynamic scenes require additional vertex data retrieval to calculate positions with greater precision.

They simply cannot efficiently iterate to produce relatively accurate diffuse reflections from multiple bounces or a host of other effects.

I will provide a very common example. Deferred lighting can process lighting in large batches (deferred lighting does not handle shadows and reflections), which effectively improves efficiency.

However, it cannot solve the issues associated with transparency. Extensive use of transparency leads to inefficiency instead.

Nevertheless, transparency can create a more detailed and realistic material feel and avoid the use of excessive triangles to build certain structures.

I am merely using an analogy here.

Although many might not understand what I have described above, my point is that value and properties are very difficult to assess.

Otherwise, it would not be so impossible to reach a consensus.

The biggest problem lies in the failure to provide an effective static metric.

Dynamic variables change too much based on the scene, making it impossible for people to have a stable understanding.

This can even create more performance vulnerabilities and increase the burden on maintainers.

Decision-making for static values is much harder.

Setting them too high is unacceptable, and setting them too low is also problematic.

Everyone makes decisions based on their own desired standards, ignoring actual needs and instead emphasizing restrictions.

For example, if the goal were truly to maximize performance optimization, why not turn everyone into 2D paper cutouts? But would that be right?

Furthermore, the Unity editor contains too many components that cannot be detected during the upload process.

This is not to mention that real scenes might feature planar reflections on water combined with dynamic soft shadows, shaders paired with outlines, and translucent materials.

Even the most powerful rendering pipeline would struggle and require painful modifications without finding an effective solution, especially when supporting VR alongside complex issues like TAA and MSAA.

This makes technical improvements difficult.

To put it simply, if an avatar has 200K triangles, applying an outline material makes it 400K.

Subsequently, turning on dynamic lighting with soft shadows brings the load to roughly 1.6M rather than 1.2M.

Then, enabling mirror effects results in a load as high as 3.2M, even if one is not directly looking into the mirror.

While a few people might have GPUs powerful enough to maintain a high frame rate, once the number of users increases and various loads are added, very little performance remains.

Technically, there are too many trade-offs to consider, and these are difficult to quantify numerically.

When people encounter something where numerical quantification is visible, they fall into an illusion.

It is actually a very simple illusion.

But is it truly simple? The simplest things often have the greatest impact.

In fact, this is much harder than it appears. Therefore, it is difficult to satisfy everyone when establishing reasonable values.

___

Actual values, using a single dynamic light source instead of multiple dynamic light sources, with one dynamic soft shadow applied.

In the default configuration with outlines, mayo is 335K, and enabling dynamic soft shadows brings it to 836K triangles.

Of course, this value and the proportions will vary depending on the specific circumstances.

Mirror effects will then double this to 1.6M.

In fact, based on my recent usage and observations on Booth, avatars with 200K or even 250K to 300K triangles already exist.

Furthermore, their sales volume is massive.

These default values and activity metrics are very high, where the count of active triangles can potentially reach 80% to 90% of the total.

So what we really need is a “obscene” rank that applies to avatars that are on the deeper end of “Very Poor”. Am I understanding this correctly?

If so: Then great, lets do that and adjust the ranking system/group instance perf tool to compensate for that.

But I don’t think the existing ranks should be changed outside of that.

Make a canny for that feature.

Yes, yes. I’ve been saying that from the very beginning. For example, that we should introduce Very Poor Tier 1/2/3. The naming doesn’t really matter. If we keep the current ranking system, that would be the best approach.

There’s no need to label it as “Good”; simply put, within the current performance rank framework, I’m proposing introducing Very Poor Tier 1/2/3. By allowing up to Very Poor Tier 2 through performance gating, you could achieve, in a 10-player instance, an effect similar to applying a Poor limit in an 80-player instance.

Well, this is something that should probably be posted on Canny. In short, I’d like VRChat to also consider the usability of everyday 20-player Group+ instances.

1 Like

That’s a horrible idea.

1 Like