#avatar-optimization

1 messages · Page 24 of 1

sweet ruin
#

From what i know you can't go beyond

cold yarrow
#

yeah beyond that you can't upload

proper grail
#
  1. if its not perfectly in a corner and can just be scale 2'd, 1 is done in blender via adding another uv map, adjusting it to your needs, and baking the old texture to the new blank target texture. like 40 buttons to click
    Somthing like this covers most of it, https://www.youtube.com/watch?v=Se8GdHptD4A, the only difference for vrchat you'd want island margin to be like 1/8th of your image resolution adjusted up until there is no default pixels remaining. Skip all the bake sections except for Bake color map~
radiant shadow
#

4 unity output log after you done a upload/offline, search for ' Bundle Name: ' , it will show every thing on the avatar including icons and their compressions , there are scripts for it you can use to read it for you ' buildsizeviewer' is one

sweet ruin
radiant shadow
#

it just reads your output log so you dont have to search for it ratl

sweet ruin
#

Nice, ty

nocturne hollow
#

Hey so im optimizing my avi for it to be able to run on quest but i still have not figured out how to reduce the poly count without ruining detail. this was originally about 55k

#

i personally admire pretty much anyone that makes pretty detailed avatars for quest

#

and mine looks basic (ngl even the full poly one is but im working on improving)

#

i have done what i could, dissolve some geometry and even occlude the legs

obsidian lake
#

normal maps can also generally preserve the shading of smoother shapes

#

many places you could dissolve edge loops still

#

for example

#

(obviously should be symmetrical)

heavy knot
#

also if the pants are permanently on, there shouldn't be geometry behind them

obsidian lake
nocturne hollow
#

And Even with that i only managed to get it to work by straight up making it half body

nocturne hollow
# obsidian lake

Actually i followed something like that and Even removed some from the inside of the head

warm cloud
ashen vigil
#

is 40k tris on an avi okay or am i fucked
(without retopo because i deadass just cannot be bothered)

radiant shadow
#

quest vrcPerfVeryPoor, pc fine

#

my quests av should never go above 20k ratl have some in <10k but wasnt really putting much effort in them know more now then way back then.

#

having a backface culling shader for quest also handy

fleet lance
radiant shadow
#

its in vrchat sdk

fleet lance
#

I have been doing avatars for years, and never noticed that.

#

How much does it help performance?

nocturne hollow
nocturne hollow
gray citrus
vapid bluff
silent wagon
#

i just made a super unoptimized avatar lets gooo

sweet ruin
#

*angry noises* xd

olive tulip
#

Hey Friends! I am new to creating avatars and clothes. Do anyone know how to take clothing blender files and optimize it for vrchat?

cold yarrow
#

oh, you cross-posted 🙁

stoic flint
#

does anyone have any ideas about efficient workflow for swapping out a set of 2D Visemes (one material each) for a sprite sheet in Blender? i have a rough idea of how to do it (putting each expression in its own section on one larger texture plane) but as far as mapping them for practical use, i'm a little lost.

currently i use blendshapes to animate planes in and out of view. i guess i would use the same planes but remap them to the new texture with a mapping node... no clue how i'd figure out the correct positions without just guessing and checking, which seems like it would take forever and not be guaranteed to be symmetrical

(posting in optimization since it's about cutting down my number of materials)

radiant shadow
#

wouldnt really bother about it in blender have to move uv, in unity just offset scale instead to places on the texture

ebon pollen
#

where can i find the list of all the physbones and colliders for an avatar in unity?

stoic flint
#

but maybe i'm misinterpretting your solution

radiant shadow
#

tilesheet thing

#

just cram them into a 4x4 (ect image)

stoic flint
#

oooh! very awesome thank you

dense cairn
#

funny how some modifiers and options helped so much with few clicks.
Mesh ▸ Clean Up ▸ Limited Dissolve → Angle: 5° (try 5–10°).
Add Modifier ▸ Decimate (Planar) → Angle: 5° → Apply.
Add Modifier ▸ Decimate (Collapse) → start Ratio: 0.25–0.35.

green bramble
dense cairn
green bramble
#

Oh, got it

olive tulip
#

We’re making custom clothing and avatars, but my creator is having issues with optimizing her designs for vrchat.

wind heath
stoic flint
olive tulip
#

Thank you! 🙏🏾✨

Let me follow-up on this and get back with a specific answer.

stoic flint
vapid bluff
olive tulip
#

@vapid bluff @stoic flint @wind heath it seems to be related to having the clothes rigged online and to the avatar. I can across some videos and articles, and will give it a try. If we run into specific issues, I will come back to the avatar rigging channel to ask.

Thank you!

spring sun
#

you are not the first nor the last person to think that just because you can run it means the entirety of all hardware can run it

#

what that vrchat knows what optimizations are required for the minimum hardware?

#

you dont need over half a gigabyte of memory for an avatar

#

thats literally only possible if you actively refuse to optimize

#

no?

#

ah so you are this kind of person

#

"bigger number better"

#

public chat

#

this is a public discord

#

I clearly know nothing despite doing this since 2018/2019

zealous wigeon
#

Yes it does.

spring sun
#

you literally said that

zealous wigeon
#

Crunch isn't a silver bullet, it just hides the problem

spring sun
#

<@&397642795457970181>

zealous wigeon
#

<@&397642795457970181>

spring sun
#

and blocked cause the dip shit decided to get pissy

stable juniper
#

that's bit... ye scary lol

spring sun
#

@mystic crescent

#

gotta love when a toddler throws a tantrum because he cant have his 2 TB avatars

cursive rover
#

Does this person expect every avatar to be 2TBs and run fine in any world?

#

I am feeling a little dumb on optimizing poly counts on my model. I'm planning on adding a violin prop, a bow prop, and a mic prop. As of right now, I've made the violin in Blender, and I made a low poly box that fits around the shape of the violin. The goal: make the box have the textures of the violin at different angles. Method: probably orthographic camera shenanigans? Problem: how do I align the cameras to be perfectly in line with the face of the low poly model that I am trying to get a picture of?

#

Afterwards I can add the low poly violin to my model and not sweat about poly counts much

proper grail
#

There was some magic tech that i seen i think tupper use, originally it was meant to turn distant scenery into a few planes, that was a barrel avatar that did sorta that. One of googles cancelled projects qq

#

Looked exactly like a barrel from further than a few feet, very obviously three planes up close

zealous wigeon
proper grail
#

This was yeaaars before imposters, i think 2021

zealous wigeon
#

Imposters have been around for years

proper grail
#

Years before imposters

#

Imposter - years

#

Really cool barrel avatar hmm, ill never find it

zealous wigeon
# proper grail This was yeaaars before imposters, i think 2021

I am talking about the general approach itself, like this from 7 years ago https://github.com/MaxRoetzler/IMP
Sadly the gif showcase died at some point recently (could only find still image, all are a single plane and the video is unrelated from another solution), but you can find the tech in many places, Amplify Imposters and various automatic LOD tools.

GitHub

billboard imposter baking for Unity. Contribute to MaxRoetzler/IMP development by creating an account on GitHub.

trail berry
#

So I am getting the issue where there is WAY less memory being used by my avi than what VRC is reporting, using the thry tool for optimization- I get this. Anything I should look at to fix this?...

heavy knot
#

seeing that scroll bar, that's a huge amount of textures

lost patio
cold yarrow
#

yeah no wonder it's 255MB

sweet ruin
#

💀

#

2048x2048

spring sun
#

Like the entire avatar gets put into memory

lost patio
spring sun
sweet ruin
spring sun
spring sun
sweet ruin
lost patio
lost patio
radiant shadow
#

all i see is a crunch bomb , not fun to unpack

spring sun
lost patio
# spring sun that is very incorrect

It depends on what kind of 3D models/avatars we are talking about
If you want realism, 2K textures will hardly be enough.
If you want stylization (but it also depends on what kind of stylization it is), it will be quite enough
This is my personal opinion, because I don't like looking at blurred textures

spring sun
#

sounds like bad uv mapping

green bramble
#

^

vapid bluff
#

just gotta have good UVs and to plan your mats a bit better

#

and use stocahstic/tiling tooo

ivory sluice
#

Realism can be achieved with very low resolutions, the realism part depends on the shader and what textures you provide

One 2k texture on the albedo is going to be less realistic than 4 1k albedo, metallic/gloss, normal and emission textures

proper grail
#

art is subjective, 8ms processing time for 40 avatars in a world is not.

vapid bluff
#

who honestly has 40 avis on tho

#

when you nearly can guarentee 90% of those are hyper very poor anyway

#

this is like gpu 4090 problems

cold yarrow
vapid bluff
#

im trying to be like yall

#

my gpu would cry

cold yarrow
#

what is it?

vapid bluff
cold yarrow
#

ah, yep.

trail berry
#

and my only active was only 56 mb so i was fine xD

abstract ember
#

Hi, when i atlas my textures the normals disapear, how do i stop this so i can add my normals too thanks!

cold yarrow
#

Use another technique, such as manually atlasing. You're using material-combiner? Last I looked, that only did the base color texture, not sure if it's been updated since.

lost patio
vapid bluff
#

and muliple UVs, for specific higher detail stuff

heavy knot
#

"realism" isn't defined by texture resolution

eternal tide
#

I removed 5 contacts by doing CURSED things. I hate it but it brings the avatar to good rank

  • Use humanoid feet contacts as senders for talon <-> floor distance
  • Combine a bunch of senders for angle measurement into a single sender, using local constraints to move the receivers to get the same results

Before and after

lost patio
solar spruce
#

Does anyone use d4rkAvatarOptimizer? I got given an avi unity project and I wanted to compress it.
d4rkAvatarOptimizer worked great! I wanted to use it on another project file and for some reason, when I add it it has tons of errors. I added the add on the same way on both programs. Any idea why it might not be working on new Unity projects?

gritty terrace
#

send a screenshot of the errors that're showing up

solar spruce
#

3rd times the charm I guess....!?

zinc abyss
#

This is only tangentially related to avatar optimization, but is there a way to clear out the junk data Unity leaves in controller files as they evolve? I manually pruned a .controller file i've been working on for a while in a text editor, and ~25% of the file was dead blend trees that Unity didn't remove after they had been deleted in the animator window

heavy knot
#

Use controller cleaner from the “rehosted” section

cold yarrow
#

oh right, I was going to grab that for exactly this reason

zinc abyss
#

even more unrelated to avatar optimization: it is a tad frustrating when the only way sites offer to add a repo or package is a vcc:// link, particularly because VCC isn't available for linux

cold yarrow
#

vpm add package dev.vrlabs.controllercleaner

#

or use alcom, it works great.

#

(I'm a linux user also)

zinc abyss
#

i added it but it's just tedious to have to take apart the link to add the repo, then go to the json itself to get the package ids

cold yarrow
#

yep, totally agree - in most cases it's easy, the vrlabs site makes it a little hard. I got this by hovering over the link though 🙂

#

also the vpm tool is exceptionally awkward and inconsistent.

zinc abyss
#

that too

#

in 2023 i opened what has now become the most active open bug ticket for vpm by more than 2x the next runner up, lol

cold yarrow
#

haha which one?

cold yarrow
#

oh that one

#

at this point I've mostly written off vpm as being a half-assed tool. I use it, but alcom is the right answer.

#

they ought to just open-source it so we can fix it

zinc abyss
#

I'd never heard of alcom before you mentioned it a few messages ago, i'm gonna check it out when i have a bit more time

cold yarrow
#

it's a cross-platform GUI replacement for VCC that also doesn't suck 🙂

open mist
#

Any advice or way to swap a texture on one material?

#

Without swapping materials?

#

I've already used a UV atlas setup for a small prop, but I think that'll be more tedious for something like clothing

nova nimbus
# open mist Any advice or way to swap a texture on one material?

I use uv atless, and met swaps on one animation

Uv atless for changing texture, so i can do colour pallet/texture swaps. So say i have a 64px by 1024px texture, that I map the offset accross at certain values, where ive got multiple textures onthe one sheet.

And I use meterial swaps for lighting changing, where i have one long animation, and every frame is changing the meterial out with another (matcap swaps or diffrent mets alltogether). Then use a float wheel to change it ingame on the one long animation

Having these be seperate means i can mix and match meterial swaps, and texture swaps! Say i want blue lighting with a purple colour pallet. I can have like 32 colour pallet swaps, and over 20 meterial swaps, and it will all be under one meterial slot ^-^b

#

(then thow in a hue shift wheel, and its super customisable, mixing any texture, with any meteral, with any hue shift!)

open mist
#

Well yeah like I said, the issue is that I'm working with a 1k shirt texture, I wouldn't mind shrinking it down to like half if it means more options

nova nimbus
open mist
#

I could keep it at 1024 just so I can have abt 16 different options

#

I'm pretty used to UV nonsense

dense shale
#

Question so my Avi is stuck around the 500mb uncompressed size and I have about 400 something mbs of texture memory, is lowering the texture resolution on the high stuff all that needs done? Also is 21 mbs for the main body’s texture a lot or is that fine?

cold yarrow
#

you could also reduce the number of textures

gritty terrace
#

that is an insane size to reach... other the lowering texture rez removing unused blendshapes is another quick-ish fix. atlasing textures if possible and merging the materials, seperating some toggles onto a secondary version of the model are some other ideas to lowering the size but require a small bit more work.

dense shale
#

My mesh size is 84.82 MBs, is that bad or?

gritty terrace
#

imo yeah but im also a bit biased cause i like my avatars to be medium rank at worst :P

tropic sonnet
dense shale
dense shale
cold yarrow
#

combine materials in some way, could be atlasing, could be baking to a new UV map, could be making a whole new texture.

dense shale
#

Are there any videos on how to use anchors or what ever their called…I feel like that’ll help trim some unneeded stuff

tropic sonnet
dense shale
cold yarrow
#

constraints?

open mist
#

giggles

open mist
#

When I optimize my model I'm thinking of:

Reducing the amount of skinned meshes (seperate non grouped meshes). For clothes you can set up shapekeys to hide them or an animation that toggles the alpha on and off.

Tri count. You can get away with a lot with at least 50k, it's just being smart with your model's topology.

Being generous with your texture sizes. You really don't need 4k textures, 2k or 1k is enough, the game compresses the textures anyways.

Materials, if you take into account the first thing I said you can actually reduce materials and still have the same amount of features.

Most importantly people need to take into heavy consideration that this is a video game. Many people will complain a game is laggy or unoptimized, but with a game where the player can create their own content the blame can and will be shifted on to you.

There's my TED Talk hope y'all liked it.

steel spade
#

i wish that my texture atlas could work

zinc abyss
#

what is the cost of 'constant' blend tree branches for maintaining animated param state? I have a list of params that need to be maintained, but I know very little about the performance impact of this stuff

cold yarrow
zinc abyss
#

Ah, thanks. I reference other pages on that site a lot, but somehow never noticed that one 🙃

cold yarrow
#

it's full of techy stuff most people don't care about 🙂

heady smelt
#

Is linking clothing on blender better for performance than VRCFury?

spring sun
#

yes

#

always yes

heady smelt
#

In what way?

spring sun
#

fury does it in the laziest not actually optimized way

heady smelt
#

Cause I honestly am thinking of just doing that

spring sun
#

it doesnt remove bones

heady smelt
#

So it increase bone counts?

spring sun
#

significantly

heady smelt
#

Tho in the future if I want to remove the clothes I can just delete the mesh and no issue will arise?

spring sun
#

every piece of clothing if its the full armature multiplies the armature every single time you add something

#

yes

#

you can delete meshes freely

heady smelt
#

hmm

spring sun
#

and in blender delete only specific parts

heady smelt
#

Sounds like a no brainer

spring sun
#

fury is mostly for people who dont want to or dont know how to do it in blender properly

heady smelt
#

I mean you just use cats no?

spring sun
#

I personally dont but you can if you want

heady smelt
#

Is it doing it properly?

spring sun
#

if its clothing built for the avatar base with identical armatures (which it would or else fury wouldnt work)
then you can just import the clothing then reparent it to the avatar base's armature then delete the old armature

#

cats isnt required for that

heady smelt
#

I wouldn't kow how to do it without cats honestly

spring sun
#

its literally ctrl p

heady smelt
#

Ah really ? XD

#

Let me try rq

spring sun
#

its quite literally how you parented the mesh to the armature to begin with

heady smelt
#

Would assume you select the armature you want to merge and then the base armature and then CTRL P?

spring sun
#

just that you just reparent the clothing to the base avatar armature and delete the old armature

spring sun
#

delete the clothing armature after

#

or before

heady smelt
#

Is that gonna merge the mesh? I hope not

spring sun
#

doesnt really matter as long as you eventually parent the clothing either by object or with empty groups

#

merging meshes is ctrl j

#

aka join

heady smelt
#

Alrighty then, thank you :D

spring sun
#

which is another way of doing it

heady smelt
#

Would assume the less mesh the better also?

#

Cause for example I have fishnets, but they have different type and one mesh that is just all of them and you can hide them with blendshapes

spring sun
#

yesnt

heady smelt
#

If I am correct the optimize way would be to actually remove in blender all the one I don't want to smash it up in one

#

so I could remove some

spring sun
#

cause less meshes mean less draw calls
technically unless they are separate materials

heady smelt
#

They are all the same material

spring sun
#

blendshapes affect the entire mesh not just the vertices you moved

#

so less optimized there technically

#

but generally less meshes is better

#

especially when using stuff like tile discarding

heady smelt
#

Yea these fishnets does use tile discard

#

I am thinking of just grabbing all the one I use and put it together in one mesh in blender and then smash it up on my avatar

heady smelt
#

Any info if this could work well?

cold yarrow
#

it does - it's got limitations though

heady smelt
cold yarrow
#

iirc it only does the albedo texture

#

I haven't used in years though

dense shale
inner topaz
#

why is it that when i reduce the size of my textures/my model's tri count, the download size stays the same? im trying to get it under the 10MB threshold for quest compatibility but no matter what i do VRC SDK says it has a download size of 11.35 MB

#

also it says i have 17 materials when i only have 3 (duplicated because thats both the blender and unity versions)

gritty terrace
#

make sure you're attempting a re-upload when checking the size, as for the materials does your model have animations for material swaps at all or are you adding anything onto the model during upload via something like VRCFury?

inner topaz
#

yea i try reuploading and i dont have anything thatd add further materials or material swaps

gritty terrace
#

did you check the material dropdown on all the meshes the model uses to see if theres any non-merged/hidden materials on the body?

inner topaz
#

pretty sure ive only got the intended ones on everything

gritty terrace
#

im not sure thats a very cut-off screenshot, you'd select the mesh and hit the dropdown in the inspector listed as materials, it should list all the shown/used (outside of animtions) materials on the model

#

also have you tried removing unused blendshapes on the mesh to lower the model size? (maybe look into thry's avatar performance tool to find out what could be taking up the most space)

inner topaz
#

ive removed unused blendshapes, meshes, materials and textures from my blender scene

#

ill look into that performance thing tho

#

theres nothing in the inspector that lists 'materials' in a dropdown, just individual materials for whatever that mesh uses

#

ok well the performance thing says the avatar is good so idk

gritty terrace
#

are your meshes not merged then? it shows for me once ive selected my mesh, also id try saving and reopening the project the materials thing might be a bug if theres really no animations in the model's stuff that'd switch the materials

grizzled garnet
#

Gonna be getting into making my own avatar from scratch next year. So.

I need tips on optimization.

To give you a basis of what I know.

Make sure textures aren't a ungodly resolution

And make sure that my polygon count isn't so high you could turn it into a line and wrap it around the sun until it blots it out (weird analogy I know.)

Aside from that I know sweet Fuck all else.

As far as it goes I'm basically going feet first into avatar creation from scratch. (Yes I'm well aware this is a dumb idea but I have to learn some how.)

So. With that being said.

Any tips, tricks and overall good things to do for making sure this avi is well optimized

inner topaz
#

anyway i combined all my meshes into one, but i now cant move the vertex groups individually so im going to have to work on that tomorrow

zenith marlin
silver hemlock
#

184,332 triangles
they had

#

which is seen for the entirety of the game…

sweet ruin
#

wtf

silver hemlock
#

garten of banban has TERRIBLE optimization its really funny to look at the models all have like literal millions of triangle

sweet ruin
ivory sluice
#

their game, just as with 90% of unreal engine or unity HDRP indie games, rely a LOT on engine automation like nanite and lumen to do all the graphic and performance work without them having to lift a finger
they're pulling out games as a super fast rate because they have unreal do the optimizations for them, so they just need to do raw sculpts, rig them in like 3 minutes and build scenes using primitive shapes and flat colors with maybe some decals

heavy knot
#

not like those engine automations are actually any good

#

Lumen absolutely wrecks performance

ivory sluice
#

yee people usually use too much lumen cuz they don't want to bake lighting and nanite cuz they don't want to have proper meshes

hardy hound
hardy hound
ivory sluice
obtuse crag
#

Is there some way to use the VrcFury+ModularAvatar optimizations for the PC version of the avatar? If I manual bake then upload that version, it completely messes up the graphics

young cairn
#

so im trying to make a fallback, does it say that i can really have 4 phys bones? since it says "It must have a Performance Rank of Good or Excellent per the Android/Quest requirements."
ive never seen a fallback with phys bones so i wanna verify this before i get my hopes up

#

and for the fallback, can it be diffrent versions of the model for pc vs Q2?

vapid bluff
#

it can be different versions, the only real thing that matters for fallbacks is that both pc and quest good ranks are under the same blueprint id

open mist
sweet ruin
#

Snek?

hybrid swift
#

are direct blend trees a good way to optimize your animator layers?

#

i just discovered that they exist, and i feel like i could combine so many of my layers with it

radiant shadow
#

yup and its faster less messing with transition (but blendtrees not fun when you want to do more then a simple thing)

cold yarrow
hybrid swift
#

nice

#

i bet i could do the same too, have a lot of toggles that are just simple things

#

i found out about them because i was looking at the vrcfury components, and saw the direct tree optimizer

cold yarrow
median wharf
#

Theorically. If 80 people in a lobby have the same model. Will the vram amount change drastically from 80 different model in a lobby?

sweet ruin
#

I don't know the technical details so I can't answer.
I'd hope that they would share resources though, instead of loading it 80x into vram lol

robust anchor
#

depends. If it is the same public avatar, then they can likely share resources.
If it is the avatar separately uploaded per person, then most likely no.

ivory sluice
#

something tells me that unity will be smart and detect when an assetbundle is cloned, but that'd need to be tested first, for now i'll just believe that each avatar is "encapsulated" as its own bunch of assets

past shale
#

Is there a simple way to do platform-specific mesh decimation via NDMF? If possible, I would like to avoid using per-platform overrides to avoid having to juggle two copies in-editor, since I have multiple avatars that need this treatment.
I made a prefab that contains a bunch of optimization components already configured so that I can use similar settings across multiple avatars; I do have Meshia Mesh Simplifier available, but I'm not sure how to target two completely different polycounts from the same asset.
EDIT: VRC Quest Tools has a "Platform Component Remover", I'll try that out and report back here.
EDIT 2: As far as I can tell, it works. In editor and on Android, it looks like the decimated version. On Desktop, it's the "real" version.

shut zenith
#

how can i atlas my textures when i use normal maps?

shut zenith
shut zenith
# shut zenith :)

ok tuxedo is a little broken, i added more materials and the bake output is broken
how do i manually atlas? the only tutorial i could really find is from tupper from 8 years ago and it seems the mentioned addons aren't a thing in blender 4.5

radiant shadow
#

https://youtu.be/_U8lkyVKTAU some tutorial , know how to manually bake and stuff myself but explaining it , not so much 🐇

In this video tutorial I show you how to use the baking system in Blender 2.8. Especially in this episode you‘ll see a solution for baking the alpha channel to display transparent textured objects. Alpha channels won’t be calculated automatically when it comes to baking textures in Blender 2.82 or before versions, but I’ll show you a smart...

▶ Play video
#

I use matcombiner and then just add/move things after to speed things up

shut zenith
# radiant shadow

yeah i don't want to use material combiner because it only does albedo iirc

#

and i also want to understand how it works

pallid dew
#

Hello how do I lower the phybones transforms count on quest with out useing this phybones I'm useing VRfury I tried the other optimizer that does that for you but it doesn't work because I have VRfury components any idea how to do this? For quest -

cold yarrow
stray chasm
#

help

#

🪦

cold yarrow
#

with...?

spring sun
warm scroll
# stray chasm

If you're doing things in blender you should be able to do some retopology to reduce the triangles, cats has material atlas tools to reduce materials, and you'll need to compromise on the number and locations of bones

stray chasm
stray chasm
spring sun
cold yarrow
elfin zodiac
# stray chasm

there are multiple skinned mesh renderes. likely clothing?
If so, you may want to make multiple avatars (same base mesh) with a different set of clothing on each.
so you spread the load.

Depending on your visiual goal your values are not that high. I have seen avatars with a poly count in the millions, but with good performance

gleaming venture
#

where can I find tools tot optimize and lower compression and mb

#

for my avatars

#

is this the right chat?

gritty terrace
#

Thry's avatar performance tool is good for figuring out what parts of the model are taking up the most space

#

and VRCFury has a blendshape optimizer script (idk its actual name) that'll remove unused blendshapes on upload

#

manually lowering texture resolution size is another quick solution to cutting back on avatar size

lucid spade
cosmic wave
#

on the skinned mesh render component can this safely be turned off ?
i dont see a difference and if it saves performance then pog ?

ivory sluice
#

This is used for motion blur, i don't think it'll have any significant performance impact so i recommend you leave it on

cosmic wave
ivory sluice
#

it's not a vrchat feature but a postprocessing effect, the motion vectors indicate at which direction the image should be blurred

cosmic wave
ivory sluice
#

i believe it's the opposite, where TAA uses motion vectors, motion blur is supported on vrc even if only in desktop, and that requires motion vectors to work, disabling it will have no impact and will look wrong with motion blur, it's like disabling mips on a texture

ivory sluice
#

it can use MSAA, FXAA, ant the other AA whose name i don't remembr

cosmic wave
ivory sluice
#

msaa is not related to motion vectors

proper grail
#

The literature you are looking for might be around 'forward rendering post processing motion vectors unity'

ivory sluice
# cosmic wave

what do you try to say w this
it clearly says MSAA doesn't use motion vectors

cosmic wave
#

you said to leave it on

#

so with this in mind turning it off will do nothing but save some performance ?

ivory sluice
#

motion vectors are used by motion blur and disabling them won't have any performance improvements, you will appear incorrectly in any vrchat world that uses motion blur

cosmic wave
ivory sluice
#

msaa has nothing to do with motion vectors
motion vectors are necessary for motion blur, msaa has nothing to do with motipn blur, it's something completely different
do not turn off motion vectors, there's no reason to turn them off, everyone has them turned on and there's no vrc related documentation anywhere that suggests you turn them off because if you do your mesh will render incorrectly with motion blur for the cost of zero benefits

again, msaa is not related to anything, it has no connection to motion vectors, don't disable them, if unity has it on by default and no other person turns it off, it's because it has little to no performance cost

cosmic wave
crimson mantle
#

So uh

how does one handle glasses on quest avatars with the lack of transparencey? do you just not have lenses?

cosmic wave
ivory sluice
#

yes

cosmic wave
#

it blurs even when off

#

same as with it on

ivory sluice
#

i can't say if it's the sdk forcing things on as with layers or the blur happening in camera space too
still, disabling it won't improve performance in any way

lapis wave
#

Idk if this is the right place to put it but

I am trying to make my avatar quest friendly, I’ve changed everything besides apparently 1
I can’t find it anywhere

radiant shadow
#

308k isnt quest friendly vrcRat you are 30 times over limits

#

surprise if security check doesnt smack it

#

waaay too much on that avatar

lapis wave
#

I was gonna save that for last because I don’t have to look for that 😅

#

well look as hard as I currently am for that one standard shader

radiant shadow
#

could be a particle , you can use something like vram checker to see all materials on avatar, then just click to find it (maybe)

lapis wave
#

Alright, thank you ^~^

compact herald
#

And just click through all the mats in your project to see if any aren't VRC

elfin zodiac
#

Some People told me that a Light on a avatar can be set to "Baked" And this would increase the performance.
I personally don't think this is true, because The Light is not truly baked, without beeing baked in the editor (lightmapping and such)

#

furthermore a baked light would only light up "static" objects or objects with have lightmaps

buoyant holly
elfin zodiac
#

A light can be set to baked, but its still realtime (because its not baked into the world)

woven lantern
#

hi does any one know the limit total vertices for android?

cold yarrow
tall flint
#

Is this the channel to ask for help for the "review any alerts" tab on vrcsdk, im very new to this and just want to optimize my avatar for at least the pcvr ver then quest ver if possible :/

cold yarrow
tall flint
#

optimization specific as in how to use polytool/d4rk to lessen the poly or sum else? okii

#

tyy

shut zenith
forest pebble
shut zenith
#

ahh

forest pebble
open mist
#

Dude I'm not sorry anymore this is just unexcusable

#

1 and a half MILLION tris

#

And like at least 6 of these folk on the game all the time

#

in the same instance

#

There really needs to be a hard limit for this stuff on PC

#

Because it's very clear that people playing this game that upload their own avatars from a base, they don't understand that this is a video game and as such their assets need to be optimized so other people besides themselves can run let alone see it.

sweet ruin
#

Would be so nice

#

Would also basically kill most mesh crashers :)))

#

I cap my shit at 250MB Texture memory and 100MB download size. Anything above is performance blocked. Avatar too unoptimized? I don't wanna see it.

#

If few people are around i can also show the avis but a...

#

I feel you xd

spring sun
sweet ruin
#

But but but now you cant see my scythe with 5 mil tries 😭 😭 xddd

open mist
#

It's really annoying because due to the sheer magnitude of unoptimized avatars more people are inclined to have avatars blocked by default and as a result my avatar is never fully seen even though it's umm

open mist
sweet ruin
#

Performance level medium gang here :)

#

And good for my fallback

#

On all platforms

open mist
#

I was able to barely edit my PC mesh for quest because I'm just that good at optimizing for video games

#

not to mention not using 4K 8K textures

#

Or that I'm not using a million outfits

sweet ruin
#

bUT My EYes NeEd To Be 4k

#

NOO THEY DON'T random text to not trigger dyno bot capslock :))

#

Reminds me of this

#

-# this was a crasher

#

Like fucking 1 oct bounds

#

How

#

Why is this allowed

spring sun
sweet ruin
#

🔥

open mist
#

I feel like it would be smarter to just upload different versions of your avatar with seperate outfits, that way you CAN have a lot of outfits but it's less load on the GPU

spring sun
#

yea but then these people argue "but but but but I dont wanna load hundreds of the same avatar"

gritty terrace
#

that or they "dont wanna fill up their uploads" like theres a limit or something

open mist
#

Would you rather download like 10MB a handful of times or 300MB most of the time

lost patio
#

hard limits kills creativity

open mist
#

You can work around! Didnt stop game devs since like the early 2000s

#

Also you should see the quest limits

#

PC would definitely get more leeway but I think it should hard cap at maybe 80k verts

lost patio
#

I have a feeling that you don't really understand that some things may require much more than that number

gritty terrace
#

80 is reasonable for general stuff and isnt too far off from some of the performance rank limits already set

forest pebble
#

Polys aren't even the issue on modern hardware

lost patio
#

but for some reason, many blame them specifically

#

the biggest hit to performance is textures and shaders

lost patio
open mist
lost patio
#

it doesn't change what I said

open mist
#

Video games should be optimized for a wide range of specs

#

Especially a game like vrc

#

80K is pretty high poly

lost patio
#

I'm not denying that, I'm just saying that some things may require more than you said,
and hard limits may simply kill the possibility of these things appearing in the game

lost patio
open mist
#

Theres workarounds, morr effecient retopo for instance

open mist
#

You have to consider that theres multiple avatars with this poly count too, on top of knowing that not everyone has high end specs, even on pc

open mist
#

Plus on vr youre rendering this all, twice

#

On top of people wanting their entire fucking closet built in with all those materials

#

Its a lot on the PC overall

lost patio
open mist
#

Mind you Im on an rtx 4080 with good ram and cpu and I chug sometimes

open mist
lost patio
open mist
#

But now you're turning off other's avatars, avatars that some people actually worked on, killing the creativity

lost patio
#

Personally, like many others, I want to upload exactly what I want into the game, not what limits dictate to me. I want to be who I want and look how I want
If the avatar you want to be can be optimized — sure, that’s your choice, and congratulations (you saved someones fps and now people can see you)
But for some, low-poly avatars aren’t enough, and I totally understand that — not everyone likes them
Thats just my opinion, and you’re free to disagree, and thats your right : )

#

And im not talking about e-boy/e-girl avatars with a bunch of clothing sets — there are plenty of other categories that could also be affected by these limits

sweet ruin
# lost patio Bro, I play vr on a gtx 1660s and an old Intel cpu, and Im not complaining — I j...

You can't just turn off random People's avatars 24/7, just to gain some performance. You don't even know who causes the performance drop.

A limit or weight based system for performance ranks would honestly be better. That way, if you are one triangle over the limit, you won't drop to very poor.
You can have a medium avatar that maxes out everything and a very poor avatar that is excellent everywhere except being one triangle over.

#

People need to learn to optimize their stuff more, or harder limits need to be in place. Most avatars i see are very poor nowadays. I don't have an issue with that, as i know that lots can cause that rank. But if you have 3 million tries, 1000 materials and everything 4k, thats no excuse.
And that doesn't 'kill creativity'. The 'creativity' kills the game experience of others at that point.

#

Right now, you don't even have an option to dynamically block those avatars via safety settings, if you choose to not wanting to render them

cold yarrow
#

I'd love to see your creation, but if its going to crash me or lag my game, nope, I'll take the pixelated mess.

sweet ruin
#

^

sweet ruin
#

-# If video doesn't load, open in web / download
Latin Gang avatars

#

very flashy, unoptimized, would never use in public, but still cool i guess.

#

also tanks my performnce from 80 to 15fps once xd

karmic geyser
#

Sturggle to get this to upload not sure what I can do for it to work on quest?

cold yarrow
#

remove stuff - that's too many polys, too many mesh renderers, too many material slots.

#

oh I see, yeah, look at all of those objects, this is definitely not setup to be a quest avatar

karmic geyser
#

🧐 I see okay

open mist
#

The minimum for fallbacks is 1 material, 10k verts

#

I forgot the rest

odd atlas
#

Would anyone have handy a sort of cheat sheet for polycount/material slots/textures for each performance rating?

zealous wigeon
odd atlas
warped sundial
#

I need help optimising this avatar

tropic sonnet
warped sundial
tropic sonnet
warped sundial
#

they asked

#

I'm on a vc with them

#

dw

tropic sonnet
#

ah cool cool

#

Ik there's some accounts dming people about an 'avatar optimizer' exe that's just a RAT

warped sundial
#

...

#

oops

#

hahahaha

#

thats so funny

#

man oh man

#

kinda sad if people fall for it tho

tropic sonnet
#

yeaah, you'd think people would've learnt not to trust strangers by now XD

gleaming venture
#

Does anyone have the mesh reader to scan how much mb is on a mesh

#

It’s like a tool where you drag a certain mesh and see how much it takes up on some avatars

cold yarrow
gleaming venture
#

yeahhh that

#

do you suppose to have that tool, if you could send that over if you may?

#

I'm still familiar on how to use it though I used it once and now I kinda forgot how to like drag the mesh in it

tawdry heath
#

Hiya, just made my first avatar and tried optimizing using a guide but it still shows as very poor quality in game

#

Not too sure what to do

#

For reference I used d4rk optimization and VRCFury and a guide on YouTube

warm cloud
#

when you click on the avatar in your menu there should be a button beneath the avatar with an "i" on it (stands for "information")

heady smelt
#

Hi so I was curious about something, realistically speaking, should you smash everything into one mesh as much as possible or not?

#

I feel like if you have clothing and you don't want to show it, it might cause an issue to have it all in one mesh

radiant shadow
#

should , much better and you wont have wierd bounding boxes where you can glitch some people's outfit out of exsistance

#

toggling parts on pc is easymode, quest more work

heady smelt
#

So if I were to Disable fishnets for example, it would disable an other outfit as well

radiant shadow
#

15 uv toggles pr material , tell poi to rename shader you have 30 toggles

heady smelt
#

I am not I understand you there ahah

#

cause if I press this on the fishnets for example

#

It will also affect a complet different material that is on the material list of the mesh

#

matter of fact, it affects all of them

radiant shadow
#

you dont want to touch the first one

#

you can also set another uv for discard 2 so 120 uv toggles possible one same mesh ratl

heady smelt
#

I'll see if I can make it work on my side, but atm I am still unsure ahah

radiant shadow
#

uv0 i leave default, uv1 for shift rare i need more

#

in poi you can right click the 'uv' tab and tell it to rename it wont affect other materials

heady smelt
#

You talking about the Discard UV option?

radiant shadow
#

extremely rare i need that ,mostly for recoloring

#

will only affect the renamed material not all others in mesh , but the name in animation will also change so gotto redo that

heady smelt
#

yea it's still affecting other materials lmao

#

I am disabling the chest fishnets and it's somehow affecting the hand of my main body

radiant shadow
#

dont animate this slot it wont like it otherwise check if its the right uv

cedar maple
#

Hm

open mist
#

thats such an obvious thing

tropic sonnet
open mist
#

Like if someone DMs you with a fuckin exe and you click that I'm sorry

#

You might be stupid

tropic sonnet
#

Lmao

dusky citrus
#

Hey all quick question-
(Using Poiyomi) What would be worse for performance, swapping between all these materials in 2 meshes? Or using a Texture Array? (Only thing that changes is the base color, it's paintjobs/markings everything else like metalic etc stays the same)

dusky citrus
#

ok tyty!

limber loom
#

Hey guys, I have this issue with my avatar, that whenever I change into it, it lags everyone for like 1 seconds before loading for them, I don't know why this happens 😢 Any idea what could be the cause? All her textures are 2K only her body is 4K, the texture quality is always normal

cold yarrow
#

things that can cause this: crunch compression, audio files with "decompress on load" checked

#

probably some others

limber loom
#

so crunch compression is disabled on all of em, and I don't use any audio files on my avatar really

#

This is how all of my texture settings look like

proper grail
#

any lights on the avatar? those cause shader compiling stutters

limber loom
#

oh it would be a good idea to post the avatar parameters

cold yarrow
#

.... wow

limber loom
#

I've seen much worse avatars, but I have no idea why mine lags people specifically you know

cold yarrow
#

yeah I can see why that lags a LOT

limber loom
#

what do you think could be the main cause?

cold yarrow
#

LOT of texture memory, lot of polys. My settings would block this by default.

limber loom
#

well yeah I think the texture memory might be the main issue, I already stuffed like 15 meshes into one and am dissolving it with the discard, so I guess I'll reduce the textures resolutions

sacred vine
#

hi!! does anyone here use these two

I forget how i was taught to use them, im trying to take this avatar and upload it for quest,
i tried but then the ears didn't move :( and the glasses texture was all wrong
(i correctly did it for pc though!)
if anyone could help thatd be amazing!

sweet ruin
sacred vine
sweet ruin
#

huh what did you break?

sacred vine
# sweet ruin huh what did you break?

so when i tried to optimize and upload this avatar for quest the glasses were grey instead of clear and the ears didnt have physics and stuff, so i tried to upload it again and its just saying "very poor", im so so unsure as to what the heck happened

sweet ruin
#

If you use VRCQuest tools it might cut stuff from your avatar

#

It is quite agressive. What i do is, i manually optimized my avatar for quest.
I duplicated the materials, switched the shaders to toon standard and then removed some physbones and stuff until i was at my desired peformance level

jolly wasp
#

I have been thinking, wouldn't it be nice to have extra data configuration on the parameters?

Motivation: Animator Performance and Better usage of synced bits

I think being able to control the "resolution" of the parameters would allow for quite neat parameter usage optimizations.

For example radials go 0 to 100 but the datatypes go
Int 0 to 255 https://creators.vrchat.com/avatars/expression-menu-and-controls#creating-an-expressions-menu
Float -1 to 1 (255 possible values https://creators.vrchat.com/avatars/animator-parameters/#user-content-fn-2 )

So there's like 150 values that just can not be "represented" with the inputs we have in game, we could in theory save 1 bit on each instance of them appearing but that's not the important part, the real important part would be that since those conversions could be done in code, that makes animators that try to encode/compress value much simpler which can potentially improve performance of avatars with stuff like that (for example avatars with face tracking)

It also allows creators to have a second way of handling "exclusive" toggles since you don't have to use states and parameter drivers while also not wasting sync bits you can convert a lot of the exclusive toggles in optimized blend-trees reducing the number of layers and transition conditions which could potentially improve performance of avatars as well.

For example, a torch that can be on the left hand, right hand or head, you only need 4 states here: Off, Lhand, Rhand, Head
Options:

  • Currently you can optimize for parameters using a parameter driver on each state turning the other bools off each time you turn one on (requieres a layer, and transition conditions)
  • Use an int where you can convert all into a single blend tree and using the parameter itself to create the exclusive toggle using 0 as Off, 1 as Lhand, 2 as Rhand, 3 as Head (which needs only 2 bits) (this doesn't need animator behaviors at all)

Knowing that performance on the game is mostly Animator bottle-necked moving all that logic out of the animatiors could be an interesting experiment

This document requires knowledge about Unity's /Documentation/Manual/AnimationParameters.html">Animator Controllers and /Documentation/Manual/class-AnimatorController.html">Animation Parameters.

You need basic knowledge about /Documentation/Manual/class-AnimatorController.html">Unity Animators to use expression parameters in your avatar's animators.

jolly wasp
#

Very likely it's the animator complexity

dapper kestrel
#

Why do bones that have zero weights on any mesh contribute to the bone count? They are essentially just gameobjects(?)

spring sun
#

Because they are bones?

dapper kestrel
# spring sun Because they are bones?

so, suppose for some reason I wanted every bone in a chain to have an additional parent (this probably sounds silly but there is a constraint setup that needs just this!)

if I export the bone chain with these additional parent bones, they contribute to the bone count

however, if I unpacked the prefab and parented every bone to a new empty game object, it doesn't!

The only difference between an empty gameobject and a "bone" game object with zero weight is that SDK counts it differently, but neither add the performance hit that bones with mesh deformation do

dapper kestrel
cold yarrow
#

do you actually have so many bones that this is a real problem?

dapper kestrel
cold yarrow
#

interesting

dapper kestrel
# cold yarrow do you actually have so many bones that this is a real problem?

a while back I made an avatar that could "add" motion to the avatar's pose no matter the tracking, which allows for all sorts of goofy things to play around with while still having full control of your avatar's pose

https://cdn.discordapp.com/attachments/730948173379535022/1336196111383396363/constraint_rig_demonstration.mp4?ex=6914b9da&is=6913685a&hm=7b17335ba30417a124c82d8b89fed348f8d153c01725dfe05d21651471d44874&

cold yarrow
#

haha that looks great

dapper kestrel
#

unfortunately, doing this requires duplicating entire branches of bones, which function as nothing else other than game objects, no mesh deforming

cold yarrow
#

I do a lot of twist bones and a full digitgrade leg setup so I'm familiar with this kind of stuff, just haven't got near any limit yet

dapper kestrel
spring sun
sweet ruin
#

Goofy goober :3

desert crag
#

Is there a guide on how to start with optimisation? Looking to shave off like 16mb at least. But I have no idea what the biggest files are. I'm guessing my best bet is to just split the avi up in 2 versions with different wardrobes though. But would be neat to just have 1

cold yarrow
#

textures, textures, textures, blendshapes, various tiny other things.

#

but yes, split it up.

desert crag
#

I'm guessing texture max MB 150 is the actual hard cap right? As other alerts for like particle counts and phys bones are above max as well - but does not seem to be preventing builds/publish

cold yarrow
desert crag
#

I think I'll just stop while I'm ahead. I updated a texture to suit my preference a bit more - and that worked out. I shall forget the mirror for now. 😄 Appreciate all the info and assists!

opaque shore
#

Does animator layer count matter more than what each layer is doing?

For example, almost all my layers would be non-looping animations, but I may have 50 layers (From VRCFury)

cold yarrow
#

it can, more layers = more processing load. fury will combine stuff like that though

zealous void
#

@lethal oasis This is where you'll get the best support.

#

But generally, for Skinned Mesh Renderer reduction, a Unity plugin named D4rk's Avatar Optimizer is great for reducing this. It can also clean up reused material slots among many other things.

lethal oasis
#

some1 in help told me cats etc but yeah that bugged

zealous void
#

CATS is often a bit of a catch-all assistance tool people mention.

#

I don't use it and I wouldn't ever really.

#

For people who use Blender very often it's never truly helpful.

#

For Triangle Count reduction, there's 2 methods. 1: Remove faces beneath clothes by manually selecting faces and deleting them in Blender. 2: Face Reduction. Either by hand or by algorithm IE decimation.

#

Your avatar however likely uses alpha-cards which aren't supported on the Quest.

#

Which means you would have solid color squares covering face elements for example for bangs.

lethal oasis
#

yeahhhh

zealous void
#

That doesn't look like alphacards.

lethal oasis
#

i just wanna be a cute elf on the internet u.u

zealous void
#

May I see the existing topology?

lethal oasis
#

but my tech knowledge is in the negatives

#

can i dm u

zealous void
#

Shaded Wireframe view works.

#

I'd prefer not.

lethal oasis
#

hey no worries ^^

zealous void
#

Any assistance I write here helps more than just you, so.

lethal oasis
#

idk how to do that this is in the character unity thing

zealous void
#

There's Lit Shaded, which is similar to the final render ingame, there's unlit, where doesn't tell the shader to render any lighting whatsoever, there's wireframe, it's only going to show the triangles, and Shaded Wireframe, which shows both Shading and Wireframes.

lethal oasis
#

sorry, as i said im pretty dumb with tech Dx

zealous void
#

Notice the little 'matball' next to "2d"

#

When I specify 'scene view' I'm referring to the tab named 'scene'.

#

It's a child of that tab

lethal oasis
#

OH thank you (and thank you for being patient with me ;;)

#

its VERY MUCH a focus on face and not as much needed for the optimisation ig

#

cuz stream avatar

zealous void
#

So for a phone it's important to remember what your goal is.

#

Let me grab an example.

lethal oasis
#

i have a vive and a quest 2

zealous void
lethal oasis
#

i will prob set up a vive but its more an i dont want to inconvenience others

#

thats why i wanna optimise

zealous void
lethal oasis
#

im pretty shy and intimidated by worlds with other people still but yeah

zealous void
#

They seem spooky but they're incredibly formulaic.

#

They're just a set of principles that all follow in a line, you learn one and it makes more sense for other concepts. Learn them in order and you know 3D.

#

They're all selfteachable, aggressively self-teachable.

lethal oasis
#

more after my burn out in 2017 ish i havent touched any 3d software, specialised in 3dsmax, and since then brains big sad and turned off and ive gotten alot dumber and struggle more with learning

#

but im trying to learn the best i can

zealous void
#

You'll pick it up quickly once you get back on it if you have used 3DSMax.

#

Blender is very easy to learn and the people who claim otherwise are often people who expect it to do things for them.

#

If you've ever learned 3DSMax in your life you're well equipped for Blender is what I'm saying.

#

Even if you don't remember a single concept.

lethal oasis
#

if i make anything anytime soon its gonna be either props or a low poly model or maybe even a voxel model

zealous void
#

Topology.

#

If you learn Topology which isn't too difficult to learn you'll be ready for anything.

#

So here's an Android Optimized Quest avatar.

lethal oasis
#

yeah

zealous void
#

As you can see, anywhere that there isn't some form of bending, there isn't an edge loop.

#

It is specifically placed to allow it to bend.

#

That's all it needs to be there for.

#

And this problem for example is incredibly common to the point that nobody will critique the avatar if it's visible.

lethal oasis
#

im more likely to do environments > avatars when i make my own stuff

#

but yeah

zealous void
lethal oasis
#

anatomy scares me

zealous void
#

But knowledge is bidirectional so it isn't an issue.

#

Like, for example of where the standards are for Quest avatars, this is not only acceptable but not too uncommon for whne you're trying to get lower polycounts.

lethal oasis
#

when im able ill start trying to relearn modelling, didnt have a good teacher in college, got to uni and i didnt know alot about uv mapping/i didnt know how to at all

zealous void
lethal oasis
#

but atm i do 2d character designs sometimes and stuff

zealous void
#

I can find ones that aren't terrible to send.

lethal oasis
#

sure!

#

i appreciate that alot 😄

zealous void
lethal oasis
#

im starting at a jewellery school monday so ill be learning jewellery cad etc so if im not overloaded from lessons and streaming ill make some time to learn blender again

#

audhd is fun when trying to learn on top of long term big sad brain shutdown

zealous void
#

Believe it or not, CAD models can be used quite well if you're comfortable making a basic lowpoly 3D model and using software such as Substance Painter or Marmoset Toolbag to 'bake' the detail to a texture.

#

The idea being that you model a super highpoly version, like a ubercool amazing gun, and then model a low quality version 'overtop' vaguely maintaining the silhouette.

#

Lowpoly's only care is a good UV map and the minimum amount of triangles required to support the silhouette.

lethal oasis
#

i remember the days of baking x.x

zealous void
#

Don't really worry about it. It's beyond simple anytime it's needed.

#

It's not close to a headache anymore.

lethal oasis
#

its more tech gives up around me like ive broken 3ds max in ways even the devs didnt understand

#

some1s telling me that my models optimisations fine

#

but idk i feel like it being red and very poor Dx

zealous void
#

As that's common in AuDHD to notice patterns and try to assume the rest before whatever you're looking at has revealed the rest of the information.

ivory sluice
#

omg birb

elfin zodiac
#

is there a avatar performance test world?

sudden sky
#

anyone here know how to make a texture atlas using UVpackmaster and Simplebake? I kept running into issues when I tried to do it so I just used CATS to do it for me but im not really happy with the resolution.

radiant shadow
#

use the matcombiner tab not the one in cats and it will be 1:1 to the orignal textures

#

tested some packers but they arent fun when you have to make masks, so i tend to atlas/manually it

cold yarrow
#

I generally do my UV arranging manually for avatars but almost always use packmaster for world props

sudden sky
#

ah

#

btw anyone know why my avatar shows up as a good in the editor and when uploaded as an test avatar but randomly doubles it's polygons and quadruples the material slots when uploaded as an acutal avatar?

cold yarrow
#

not sure why it'd quadruple material slots

sudden sky
#

same avatar

#

When uploaded as test avatar

sudden sky
#

is this a bug? i've never had anything like this happen with any of my avatars before

#

think I figured it out, some sort of animator issue

somber notch
cold yarrow
#

button that clones your own avatar 50 times to see if it crashes you?

sweet ruin
#

Holy crap

#

So many tries 😂

fleet lance
#

Anyone know good tools to optimize Kikyo and her various outfits?

VRC is blocking my uploads of her for Texture Memory or something.

obsidian lake
fleet lance
obsidian lake
fleet lance
flint sonnet
#

Can someone help me with uploading avatars? I swear everytime I purchase a avatar that is quest compatible I always have issues going over the 10mb limit? and on this avatar I have I cannot get below 10mb. I can't get it lower than the 10.4MB. It already uses blendshape optimization and I have downscaled all textures to 256 and below? Using thry's it seems all the assets are taking up most of the space but I am not that experienced and have no idea of how to go about making the assets smaller? I can't get it below 10.4 mb

flint sonnet
gritty terrace
#

with meshes you'd do that in blender, blendshapes would also be done in blender but VRCFury has a blendshape optimizer script which removes any that arent used in any animations on the model. as for finding out whats used and unused you'd kinda just have to go through each animation for the model

#

if you're already using the blendshape optimizer though id just ignore trying to manually fix it since it looks like thats not whats causing your issue (thry's tool wont update based off VRCFury scripts since those dont take effect until during upload)

cosmic wave
#

Does vrc use Multi-Pass rendering or single pass?

zealous wigeon
# cosmic wave Does vrc use Multi-Pass rendering or single pass?

On Quest it is SPS-I (which I think is just called single pass instanced in current Unity), but neither on PC, assuming you are talking about single pass instanced (SPS-I), which is the only single pass rendering current public Unity supports, but VRChat got Unity to port the worse single pass stereo (SPS) forward to this Unity version because moving over to SPS-I on PC would break every unprepared shader and apparently even with years of heads up that wasn't enough time so they scrapped it.

cosmic wave
delicate wadi
#

Okay so I watched some videos on getting an booth model to work in VRChat using the VCCompanion and Unity and SDK and it seemed doable but when I try it I got a ton of errors preventing me from actually uploading even though the test model works for testing

#

Now there is some stuff online about fixing the bone errors and mesh errors and mateiral errors but I feel like I spent what little IQ points I had on the previous steps already

#

And If I just delete the things when clicking "select" on the alerts everything just liquifies onto the floor or something

cold yarrow
delicate wadi
#

Sure thing I figured it fell under optimization since it worked in test but seems to have a stricter critera to be allowed to actually use outside of testing

drowsy field
#

Yo people I've gotten my avatar to green apart from bone count which is poor performance. Every time I try to remove bones it spaghettifies in unity. I am using CATS to import/export. Is there a specific way to remove bones that isn't selecting and deleting them or that could fix this issue?

zealous wigeon
# drowsy field Yo people I've gotten my avatar to green apart from bone count which is poor per...

First of all, don't use CATS like that, especially if older versions that almost intentionally mess things up.
CATS is good for shortcuts and merging armature, but aside from that I recommend not using it.

And for deleting bones, I recommend dissolving bones instead, it combines the bones and their weights (likely part of why you are seeing spaghettification).

When importing back into Unity, if you are simply replacing the FBX without knowing exactly what you are doing then spaghettification can also happen, best to just put into Unity as a new model.

cold yarrow
#

you can often do the replacement thing even if you do a lot of bone updates - try setting the rig to generic and apply, then redoing the humanoid setup.

delicate wadi
#

Seems like ill be going down a deep rabbit hole to get the bone count down without spaghettifying

minor compass
#

AHHh, can anybody tell me how to fix this????
I'm done trying to fix this nonsense
I try my best to optimize my avatars to medium, everything is fine when I first upload the avatar and correctly says it's medium, then a couple days past and it goes down to very poor without me touching anything, I go in the editor and this bounding box issue doesn't exist, I update the avatar and still says very poor!

cold yarrow
#

did you add a prop with a giant bounding box or something?

minor compass
minor compass
minor compass
#

I found which asset causes it, it's the hair, but it's weird, I've used this exact hair on other medium avatars and even in a good avatar and did not have this issue, and it's bounding box looks fine.

grim lagoon
#

I... don't know how to optimize in Unity...
Somehow this idiot takes a ton of colliders and I don't know how to fix... him... me... it. It.

cursive badger
#

Working on a Optimization tool :)

#

Before Optimization:

#

Materials: 108, Skinned 48, Mesh 45, Particle 17

#

After Optimization:

#

Materials: 58, Skinned 27, Mesh 14, Particle 14

summer yoke
#

Stupid question inbound! If I were to upload an avatar with GoGoLoco installed on the Windows version of the avatar, but NOT the Android version, would it still be visible that I'm using GoGoLoco to people on Quest?

#

I'm trying to optimize my avatar right now and it's forcing me to get rid of a bunch of outfits that I had.

#

So I figured getting rid of the GoGoLoco on the Android version might help. (Unless it doesn't.)

cold yarrow
#

no, your quest version wouldn't do any of the same actions

main carbon
tame frigate
#

Uhhh, whatt can I do about the triangle count of these christmas lights? I didn't make em and I dont' even know where to begin to not mess up teh texture when dissolving the model

cold yarrow
#

that's 60k polys for just the lights?

tame frigate
#

Yeah I was wondering where the 182k tirangels were coming from so I opened all my assets and model in blender

cold yarrow
#

burn it to the ground.

tame frigate
#

113k just for the base is crazy enough, 60k for lights iseven more absurd

#

Lmao the bows have teh lowest poly count out of all the christmas assets

#

But uh yeah how would I easily select just the wire to be able to dissolve it without messing with the lights part of the lights

#

Actually nevermind, I think I'd have to entierly recreate these to get them any better. Decimate and limited dissolve ain't working for keeping it actually not a mess

heady smelt
tame frigate
#

managed to scrape 22.4k triangles

tame frigate
#

damn, I completely broke it

#

Rexporting the backup didn't work either

#

Time to readd them for the 50th time

heady smelt
tame frigate
#

Alr relinked the backup and closed blender without saving but I'll save that link for next time I try to do smthn way out of my league like this again.

#

The decimated mesh didn't even look good and was like a 12% decrease to my total tri count. Not worth it for how bad it looked

#

1/8th better for 8x worse looking lights

heady smelt
#

Instead of decimating with Blender, you can try the decimation tools with cats blender plugin (the fork by neko seems to lack it but older versions/other forks have it), it has more advanced options to tweak its decimation. but it'll never be as good as manual work

tame frigate
#

Yeah Idk how that plugin works

#

I have it tho

#

had it

#

Apparently I deleted it when it seemingly didn't do anything lmao

#

I had got it to try and make adding my custom fluff easier, but it did literally nothing compared to blender without it XD

#

Someone said it would link the meshes into the same one when I pressed join

#

It didn't do that

#

I had to do it myself

obsidian lake
#

if you wanted to remake them you could try baking the original to planes

#

so like

#

basically a 2D belt around the avatar

#

and then each light is a rectangle

#

or honestly even a triangle would do

#

bake albedo, alpha, normals, and emission?

#

and then do weight paint transfer

#

probably with the robust weight paint transfer addon

spring sun
tame frigate
#

Well it's 14k for just the torso part

#

It's 60k total

#

Either way it's like the 2 wire 120v Christmas light style, so it makes sense why

spring sun
#

Nevermind

#

60k is terrible

obsidian lake
tame frigate
#

Where's the transparency?

#

Does standard lite even support transparency? I thought it didn't bc quest and what not.

tame frigate
#

I don't think a circle can get much simpler

maiden trellis
#

Actually while im here
Is there a way to cut out blendshapes in unity or do I need to get it back into blender and edit them there
Trying to make a PC only avi a slimmed down quest version and I can probably save a bit by deleting unused blendshapes

cold yarrow
#

I think vrc quest tools can do that

maiden trellis
#

I didnt see anything obvious when I used it but I didnt dig all that deep due to focusing on the textures turning nasty when converted
Ill poke more at it then

cold yarrow
#

I may be wrong, I've never used it, just seen it mentioned here

maiden trellis
#

Still a starting point so ill be sure to look. Just wanting to try and squeeze in another clothing option
Worst case I can just upload two versions of it with a different set of clothes

obsidian lake
#

unfortunately the limitations on Quest do sometimes make optimization harder than on PC

#

no UV tile discard, transparency is more expensive than a higher poly count usually, so cards for detailed objects are a no-go (chains, lights, hair, etc)

tame frigate
#

Also I am on pc with em

#

I just use standard lite shader because it's one less material I have to change when converting to quest

#

Because it's just black

#

Solid Colour

#

So I don't need like poiyomi or anything

#

It's a free asset either way and it's still better than anything I can make so I'll deal with it lmao, I'm just not keeping it on this avatar past Christmas unlike with my nardo (my nardo is only as optimized as it needs to be)

tiny fiber
#

So I have lowered my textures for quest as far as I’m willing too which made the quality bad but I still need help it’s at 11 I need it at 10 I don’t know what else to do without making the textures worse

cold yarrow
#

you could try to reduce other things, like the mesh size

tiny fiber
cold yarrow
#

Blendshapes take up a lot of space.

tiny fiber
cold yarrow
#

I do it in Blender

#

you might consider just fewer mesh objects too, like if you have multiple clothing outfits or something

trim glen
#

Mine says 40mb max

cold yarrow
#

iirc 10 compressed, 40 uncompressed

tiny fiber
#

I got it in but the hand rig is decrepied lol

fleet laurel
#

Nah. Keep it it's funny. Lol

#

I'm obviously kidding btw

pure spindle
#

Is it possible to make avatar Green without having polygon count marked good?
I'd like to make green version of my avatar, but it's impossible for me to lower poly count under 70k. I really wish devs would make that one more reasonable than what it is atm.
(70 000 polys -> very poor
69 999 polys -> good)

zealous wigeon
pure spindle
#

that's so stupid

zealous wigeon
#

But like, 70k is not that unreasonable, it just appears as such if you aren't used to Blender or other 3d modelling software

#

Of course doesn't help that some creators make assets where they either don't care at all about optimization or just assume it will be the only thing on the avatar base

pure spindle
#

I use blender a lot, but it's not possible to lower my avatar's poly count that low without fully changing some assets, or making it naked.

zealous wigeon
#

Dissolving edge loops in blender makes for quick optimization, never had to sacrifice much if anything unless putting it on Quest.

pure spindle
#

They should finally make the poly count rank higher. That way more people would actually start and try optimize more

pure spindle
zealous wigeon
#

Anyhow, you didn't say how much you are wanting them to increase it by, but any increase would definitely not be by that much.

And like, just delete the underlying mesh on your avatar if naked is a problem, if the avatar base is bad then that will be a significant amount of savings.

pure spindle
# zealous wigeon . . and also make quite a few people people optimize less

The reason most people don't care about optimizing is that 70k polygon limit. If it was higher, then more would optimize. Like why would I have everything else green on my avatar if it will still be ranked very poor because it has over 70k polygons? At that point 90% of people see no reason to even try and just have 50 materials since the rank stays the same

zealous wigeon
#

I really doubt it would make a difference.

#

Too many people that just don't care

pure spindle
#

It would. I see so many creators whining about this same issue XD

zealous wigeon
#

And also deciding to just screw the ranking completely?

#

It is one thing to decide to ignore the rankings because you can't keep the polygons low and another to decide that you simply don't care about the experience of others.

#

Yes, the rankings aren't great and basically assume a static avatar without toggles, but they are an alright guide.

pure spindle
zealous wigeon
#

And if you have blender skills then just optimize, below 70k polygons is only hard to hit if you have too much stuff or clothing that is basically completely transparent.

zealous wigeon
pure spindle
#

Would make way more sense but oh well. I just keep my avatar very poor

reef scroll
#

(repost bc I made many improvements)

So like... how bad is it? How much of this is "ah sensitive baby" vs "oh no you HAVE to fix that" (and if I do pls help me for the love of god). Im not worried about running it on my end, I have a good machine and PCVR

radiant shadow
#

These things id optimize usually im at 8-12 components , colliders rarely needed with angle limits , could get that av to good/medium rating pretty easy

cold yarrow
#

yeah this is a huge improvement from before

#

very nice

frosty fern
#

70k triangles is actually extremely generous for a multiplayer online game, especially so when everyone has a unique avatar. Much more so when no one uses LOD.

frosty fern
glad ridge
#

which one do i use?

cold yarrow
#

for what

glad ridge
#

my avatar for quest

cold yarrow
pallid aspen
#

Is there by chance an alternative to the Tuxedo plugin on blender 5? It still works if I use blender 4.5 LTS but figured I'd ask, especially since Tuxedo doesn't seem to tightly pack the atlas despite having a resolution cap? Nothing else I'd tried so far seemed to be able to bake textures correctly for me

cold yarrow
#

oh does it not work on 5 yet?

#

I don't think I've tried yet

#

if you're specifically doing texture baking, I really like SimpleBake, even though it's not free

#

hmmm Tuxedo hasn't been updated in a year, I wonder if I feel ambitious enough to make a PR

#

(I use it for the twist bones feature)

pallid aspen
#

It fails with errors for me, the particular one seeming to vary by which layers I'm trying to do, but with my normal settings it was saying something about multi-res (away from computer rn)

soft kestrel
#

can i just use Avatar Optimiser off booth and call it a day?

gritty terrace
#

depends on what the stats look like before using it, there might be stuff that optimizer cant change/fix that'd be increasing your model size or tanking the rating

#

add-ons like that are good for quick simplish fixes but if something is too far gone manual optimization is really your best (and sometimes only) bet

keen solar
#

Hi im trying to optimiz my avatar and it doesnt work i look at vidéo but it doesnt help a lot can somebody help me pls first time optimizing

trim glen
keen solar
#

That what I did i drop them to 225

#

Should I remove feature on the avatar?

keen solar
#

56

trim glen
#

Absolutely not

#

That is the worst possible graphics

keen solar
#

What should I do ?

gritty terrace
#

w/o knowing what the stats look like you cant really get good directions on what you'd need to fix/change

pulsar turret
#

Hi

#

Gotta get you a geneiu avatar

cold yarrow
#

?

slate flower
#

One question :

When I am about to opload an avatar, on unity it shows 69997 triangles
But in game when uploaded, 86989 triangles
Any idea how I can find what makes more triangles after upload ?
Maybe it is vrcfurry, not sure

radiant shadow
#

sdk wont tell you right stats if you using vrcfury to add more things

zealous wigeon
zealous wigeon
slate flower
#

I don't remember any setting "keep quads". Do you know where I can find that ?

zealous wigeon
#

One of the settings alongside the rigging tab and etc

slate flower
#

Keep Quads is unchecked, as you can see

zealous wigeon
#

Well assuming nothing else has it on then you should probably look into any VRCFury prefabs anyway, I don't think there is anything that adds tris, but could be wrong.

slate flower
#

It may be vrc furry, I'm looking into that

radiant shadow
#

duplicate av, drop vrcfury & all controllers - upload offline see what stats it has now🤷‍♂️

slate flower
#

I removed all VRC furry stuff, Darker optimizer, and it is medium now. So that's why
I'll try to find what exactly cause that

Thanks for the help !

#

If someone have the same issue one day, here the anwser :
Those VRCfurry components make the triangle count higher
Anyway, problem solved

zealous wigeon
#

None of those should be increasing the triangle count, the SDK is aware of disabled objects so I am still confused.

austere comet
#

Does anyone make avis

robust barn
#

How do you lower your skinned meshes?

cold yarrow
#

merge the mesh objects

robust barn
#

I was going to use them as toggleable but it seems to be way to performance heavy should i combine the materials back into the body atlass as well?

cold yarrow
#

Yeah merging meshes doesn't combine materials, so if they have separate ones you'll want to combine those too

trim glen
#

HOW

#

My textures are at 1024

#

All of them

#

Do I gotta lower them to 512?

radiant shadow
#

theres more then textures on the avatar, fbx/shapekeys/animations/audio ect adds up , large fbx's cant be under 10mb easy

trim glen
#

I don't have any shapekeys

#

And the only animations are particle systems, which are heavily downgraded

#

Plus, no audio cause its quest

#

Like, am I supposed to make my physical avatar smaller than 2.1m?

zealous wigeon
#

That has no effect on MB size

trim glen
#

Good

#

But what else is there?

zealous wigeon
trim glen
#

Aight

zealous wigeon
#

If it says textures are taking up several MB then swap over to the ASTC texture format for android and make it like 8x8

trim glen
#

Another file thing 💔

trim glen
zealous wigeon
trim glen
#

Honestly, I'm just gonna see what happens if I bring my textures down to 512

zealous wigeon
#

You can also check with the worldtoolkit that is included with VCC, after trying to upload once, it will tell you the size of everything included.

trim glen
radiant shadow
#

its just reading the log after its done, can be done manually

trim glen
#

Ah

zealous wigeon
radiant shadow
#

its like that one

trim glen
#

Thing is

radiant shadow
#

unity editor log shows filesize and compression on everything after

trim glen
#

How is it that I make an avatar, with much less things and much less effects on it, and yet it's 24mb

zealous wigeon
trim glen
#

Ngl, it could be the fact that my avatar has 1.68 million triangles :-;

#

No idea if I can reduce that though

radiant shadow
#

that is what i call a quest crasher and security check would flag it for being oh only 84 times above the limits

trim glen
#

Quest crasher?

#

It's a Wendigo model I found on Sketchfab 💔

radiant shadow
#

shove 1.68m vertices in a quest user face see what happen to their frames

trim glen
#

Especially since I'm a quest user

radiant shadow
#

cause you were hidden and aweful , you would be blocked instantly even on pc

trim glen
#

Then how do I lower the triangles?

#

Looks like I can't

gritty terrace
#

decimate it in Blender, theres a built-in modifier but its not great so manual decimation is kinda the way to go (theres also paid unity add-ons like polytool but im not sure how well it'd work for a model not created for vrchat specifically)

muted prairie
#

if i use this, it mean the resolution will only be 2048 for quest right ?

zealous wigeon
verbal ermine
#

So I’m working threw unity and I was wondering if anyone knew what causes this it’s only the ears that are like this

And I’m not exactly sure what’s going on I’ve checked blender n everything seems fine on there so I’m just a lil confused n I couldn’t find a video for it so I was just wondering if anyone here knows?

cold yarrow
proper grail
worn flame
#

Hey guys, I recently started messing around with avatars and I wanted to ask if what usually causes people to lag with their avatars is their texture? My avatar has 178MB of textures, is that good for PC gamers? I don't know if I should worry about particles and stuff.

cold yarrow
#

that's about 120 over the value I'd aim for, honestly

#

Also draw calls are a big thing - which means material slot count

worn flame
cold yarrow
#

it's a combination of a lot of things

#

Also I hope you mean 1024 rather than 1040.

worn flame
#

yea

#

But generally, the only thing causing lag is the textures?

cold yarrow
#

no, everything can

ivory sluice
#

the textures have an insignificant impact, what you have to look into when it comes to texture usage is the shaders, which are the ones tha sample them

high flame
#

Try to get your material count down, and skinned meshes. You can combine skinned meshes and materials in blender, and if it's possible to use the same material for multiple skinned meshes in unity, do that. Any particle effect system or light system can also make someone lag pretty bad. Use tools like blend shape optimizer with vr fury to save some vram as well

verbal orchid
#

Some meshes have many textures (masks, bump maps, etc), and some avatars have many meshes, so even smaller textures can add up

drifting owl
#

Can I merge ten separate nails placed on each finger armature in some way so that they all use the same material slot in the unity editor? They all use the exact same material, but they all contribute to their own material slot when I look at the alerts before upload.

#

Already have d4rk, merge skinned meshes.

zealous wigeon
drifting owl
#

I enabled it but it seems no change yet. I was thinking maybe they get merged during upload process. I will try in a moment.

zealous wigeon
#

They do only get merged during the upload process

#

You can have it create an optimized clone but generally it just works so why have that extra step when it will just fix it on upload.

cold yarrow
drifting owl
#

Thanks for tips. I am trying some things but this is all pretty slow. ☕ Got the tools installed on a hard disk drive... I don't have blender installed or any addons to work with avis over there yet.

cold yarrow
#

no addons are needed, but okay.

drifting owl
#

Ok yeah it seems they did get merged during the upload process nice, nice! Merge static meshes as skinned I had disabled because I ran into an error that I need to investigate.

#

I have circumvented the present problem.

stuck quarry
#

If you make a texture for a particle does it count as a main model texture because I’m concerned about the 4 texture limit

cold yarrow
#

all particle system materials count as material slots. Textures aren't really relevant other than file/VRAM size

stuck quarry
#

okay thanks

vivid sorrel
#

I am the best avatar optimizer on earth, god gave me divine intellect. This is divine intellect right here

vivid sorrel
sweet ruin
#

lol

vivid sorrel
obsidian lake
vivid sorrel
#

yea that paired with d4rk's avatar optimizer got my performance rank from very poor to medium (only on the pc build tho 😭 )

#

bit of a drastic approach tho, although I only have 1 clothing item so it didn't really matter much to me

trim glen
#

How do I fix this issue?

#

So, on pc, everything works fine

#

But on quest, some abilities are invisible

#

Wait, I think I found my issue

trim glen
#

Nvm, didn't fix

twin mist
#

got the big thighs with the tiny waist

zealous void
#

704 tris Steam Deck for my avatar, optimized it myself byhand.

#

Atlassed to my main avatar's prop atlas.