#avatar-optimization
1 messages · Page 68 of 1
enable your gizmo's if you are trying to find the viewball
Oh thanks
Anyone able to optimize a 2-D Gorillaz Avatar for quest?
the standard thing won’t go away
Do you have any unassigned material on your model?
Select the meshes one by one and on the inspector there should appear the material list, make sure all of these are not legacy and have a vtchat/mobile shader
Ah cool then
does this work on all standard shaders? was just about to ask about how to remove or change it
if the materials that give this error are not assigned to the mesh and are on the list's end, you can remove them by lowering the number on slots that appears above the list
tho the correct way to remove them would be importing the model on blender and on the materials settings click the arrow next to the list and click "remove unused slots"
okay i'll try figure that out, thanks
is it possible to texture paint an object onto another to decrease polygon count? (For example: Having fishnets on the skin texture instead of its own mesh)
yes
ye but in the fishnet case i recommend another method to keep the base
first take the low poly mesh and put it over the high poly mesh
the low poly mesh should be uv mapped btw
on the material of the high poly mesh set the shader output as a white emission shader
then on the material on the low poly mesh put a image texture node, do not connect it anywhere
click on "new" on the node and create an image
make sure your render engine is cycles, not eevee
now select first the high poly mesh, while holding shift also select the low poly one
on render settings go to color management and change it from filmic to standard
then go to bake, set the margin to 0 pixels, make sure the output is image texture
also check "selected to active"
change the bake type to emit
also you don't need a lot of samples so you can just set the samples from the dafult 4096 to 64 or 128
then you click on bake, it should bake the image you created as a black and white texture
if you did that on the body mesh you can just use the texture as a decal mask or some overlay (ig poiyomi has it)
if you did it on a separate object you can go to the unity texture import settings (or the inspector better said) and set the alpha as the image's grayscale and then put it on a transparent material as the main texture, then with the material color you put it to whatever you want
or just using the texture as an alpha mask
tho it can be better done by making a separate low poly mesh, unwrapping the uvs on an ordered way, then just putting in a material with a transparent fishnet texture, you tile it and done
i think i need images to explain this fck
So ive recently made and uploaded my avatar into VR chat from Vroid, and for some reason my Avatar moves its eyes even when im not moving. What do about dis?
...?
He looks at stuff?
Next you'll tell me he blinks as well 😄
Explain the issue a bit more
basically i want my Avatar to not move his eyes around so much (?)
like uhhh how some avatars, if you look in the mirror and move your head the eyes will be looking where the camera is looking (which is the mirror )
go to your descriptor and make him more confident, the poor thing
is that Unity Editor?
yes
cool. Wheres that function in? Kinda lost :3
Yes
Calm excited makes the eye dart around more often
Shy confident is how long he "holds" eye contact on something
so quick question: how do i get material combiner back on cats if the download link is dead on blender
The Avatar Performance Ranking System allows you to see how much a user's avatar is affecting performance via analysis of the components on that user's avatar. You can also use it on yourself to see how performant your avatar is. This system is provided to inform users what is likely the most perfor...
Thanks Slvr!
what do you mean ? which version of blender/cats
If its just a link not working, afaik this is the repo for it and it should still work ,https://github.com/Grim-es/material-combiner-addon
Some here that is good at using unity im new to it and need help@:>
the model i'm planning on using has 34k triangles, am i good to use it or will optimization need to be done?
depends are you uploading a PC or a quest Avatar
The Avatar Performance Ranking System allows you to see how much a user's avatar is affecting performance via analysis of the components on that user's avatar. You can also use it on yourself to see how performant your avatar is. This system is provided to inform users what is likely the most perfor...
People will be able to help if you ask specific questions !
My textures aren't showing up, can someone tell me what i did wrong?
@gentle crown check your materials
they most likely are not using the correct shader
how do i do that?
Im new to unity so thats why im asking questions
unless he dropped textures/materials inside the vrsdk or scenes folder he probably straight up is missing them lol
ngl i fixed the above by straight up using the correct blender version because any version after 2.92 or before(i think) doesnt copy the textures over when you bring the model to unity. I made sure to change path mode to copy and that the icon was lit up blue. also another thing if that doesnt work try using cats to both import and export your model. Ngl that saved me the trouble of having to assign every texture manually as well as not dealing with a purple colored humanoid blob. after you do that extract your materials and texture to their own folder in your assets folder. i.e. when you click materials extract textures put them in their own folder named textures or whatever you want right... then extract your materials just below extract textures and do the same but this time it's a material folder and boom it should work
Is the CATS atlas tool just unusable when it comes to models that originate from vroid? Here's my experience:
Doesn't ask for a save file location, just assigns the ear texture to the whole avatar....
it's gonna be PC, not the quest version, I don't really wanna put in the effort when I highly doubt anyone who'd want the avatar is playing natively on quest anyway
looks like it'll be okay
It should be compatible considering I made my model in vroid got it over to vr chat no problem once I used the correct version of blender. Honestly I don't have an answer because I didn't encounter this when making my model. (In pfp so yeah I didn't encounter that with the ears)
a
are there any custom mobile shaders that could support cutout transparency? I have a model around 252 tris that I want to use as a fallback avatar but it uses cutout transparency
damn thats annoying
Thanks for the tips! I'll let you know if it worked once I have energy to finish
I just realized I have blender 2.93. Do i have to delete it and redownload 2.92 or can i try finding a fix?
2.93 is fine
I didn't use anything but 2.92 but even then I didn't have to delete my previous installation of blender it just added it in a separate folder in the blender install folder
I honestly don't know. As before I was using the latest version then switched to the recommended 2.92
alr
I'll find a YT vid on how to fix the issue
i tried to use that baking thing in the CATS blender plugin but i get this error, what do i do?
https://www.youtube.com/watch?v=XbX1lewQQWc Avatar Optimization Blender tutorial: Merging textures/materials/Meshes
First tutorial on Optimization
@boreal glade @uncut plaza I made a tutorial on reducing meshes/material slots. Up next: Poly count
so, i sorta fixed my issue with the textures being pink. but now my avatar does not have any textures at all. anyone know what i need to do?
@dire pike you are a legend
Did you apply the right shaders that are used for the character?
LMK if it helped at all, i can probably lower the music and add text to the video to make it more clear >.< I felt the music was too catchy and distracting
ill prob watch it a million times anyways XD
whatever works! ^^
I know neither has an impact on performance in the documentations
But which is better for toggling things on the face: shape keys or bones?
I feel like the answer would be bones
Bones
okay so- I want to make an Avatar that can change clothes- but the way I'm setting it up the shirt will change with blendshapes and such, but I also want the COLOR/DESIGN of the shirt to change, so-
What would be more optimized?
a single material/texture on a seperate mesh that has an animation that just shifts the offset of the uvs to change design
(the seperate mesh is so that it doesn't also shift the UVs of the other materials)
OR
a single mesh where the animation just changes the material to another material for a single texture of each design?
Don't use blendshapes for clothing, using bones and scale them instead. Blendshapes continuously active on high poly meshes are not performant at all to begin with 
As for your second question, UV shifting is a lot better
most likely i didn't and idk how to apply the shaders
locate ur materials and apply a shader to them
how do i locate and what shader do i apply?
u could try default shader just to see if it shows up on the material, but most likely it is using poiyomi shader i would imagine so u would have to import that
ur materials are usually located in a folder under assets
alr
u can also click a few times on ur avi until u see materials on the right
I'll do that and lyk if it works
👍
Anyone know a good tutorial out there that teaches you how to merge material slots and meshes
blender + CATS plugin can do that, should be tutorials on youtube for that aswell
Which one
click ur avatar twice, like on the clothing example the n in the right u should see the corresponding material u selected
it should be under packages i assume for u
it all depends on where ur avatar stuff is at in ur asset folder
u wanna find something like this
but where they all are pink, then change shader
yeah
so u wanna use
matcap lit, toon lit, or standard lite
then they should show, if not then its probably because the textures arent set on the materials
do i apply that for all of the circles?
circles ?
materials u mean ? yes
u want all ur materials to be quest compatable so they must be either standard lite, matcap lit, or toon lit preferrebly
alr
i personally prefer matcap lit
alr
standard lite to some things depends but ye
im a index / pc user so my quest variant isnt my biggest concern ofc
then something similar to this should show
yeah '' none ( texture ) ''
u need to set texture in that
u press select, locate the correct texture to the correct material and it should show for u
most likely ur texture is named similar to this
so u could example type ''body'' in the search bar
i cant tell wheter that is the correct texture or not, also i do not know the avatar nor the creator or how it is all setup etc or if anything is missing :p
so ..
what u can do now isi that, u selected that texture
now look at ur avatar body and see if it shows up
I made the avatar
did u made textures to it tho
or is this a vroid ?
neitherways i dont know where ur textures are or not or if u even have textures for ur materials / made textures for them, but atleast now u know how to 'fix' it
It was made in VRoid
so it should come with the textures, not sure where they gone
0:00 | Intro
0:53 | What you need
1:11 | Vroid removing transparent areas
6:25 | Exporting from vroid
12:01 | Blender
14:12 | Setting up your avatar in Blender
16:59 | Cleaning eyebrows
19:16 | Demonstrating editing the mesh
21:31 | Combining materials
23:04 | Reducing polygons
25:10 | Exporting from blender
26:00 | Unity
26:46 | Configuring mod...
This was the tutorial i followed
now maybe i might've skipped a step but idk what i did wrong
The video was made in Late January 2022 so it's somewhat recent
might be the blender process that went wrong, most likely the combining materials / atlas
yeah
neitherways so what u could do is make a replicate of it, then export it from CATS dont do anything to it as long as it has the materials / textures shown
then import that fbx into ur project, and take the textures from that
to use
so wait. go back to the file in blender with the textures, and then export from CATS?
so basicly take ur Vroid file, open blender, import with cats, make sure i t shows up with texture / materials, then export it as fbx
so in unity do i make a new project?
u can use same project and just have a replicate of it under asset as long as u dont put it into ur hierechy
once u locate textures of that, u could right click to open in explorer, so it shows in a folder, copy paste the textures to ur desktop or some like that, then u can if u like but its not rly needed, delete the import again and then just drag in the textures from ur desktop to ur project
I found the textures
those are materials not textures
oh
can i import the avatar from my files or will the textures not go with it
This is what i have atm
i am not sure what u done now, it seems u started a new project even i said it wasnt needed
as said earlier
vroid -> blender -> cats export ->
they wont screw up even if u have 10 of the same avi in the same project
yeah i did that
most importantly u just want the textures anyways which means u can delete those 10 avi's afterwards or keep 1 ofcourse
im at the point in unity where i need to import it
so u have ur .fbx that u exported from blender where u made sure it was showing with textures correctly
u drag that into ur asset folder
thats a blend
not a fbx
u wanna select fbx when u export
i mean it should be exporting as fbx
when u click on CATS export
it was not the right pic tho it was for import not export
but u wanna hit this button
so it saved as .fbx then ?
just press continue
wait tho
can u show me the avi in blender
so i can make sure it has the textures
i did
then show me
no i mean the avi lol
how do i show that
Im completely lost
send me a screenshot of ur avatar again
but with that option
look at the screenshot ^ u sent before
its on the wrong one
alright so this is how it is supposed to look right ?
yes export as .fbx
then drag .fbx into ur unity, then it should come along with the textures
its not working
are u clicking this
yeah\
seems odd when i click that, it allows me to export as fbx ehh ...
let me see again how it was with vroids
Hi Guys, here is a new tutorial on How to Export an FBX file from a VRoid character!
In this video, you can follow some simple steps on how I'm imported and exported the file,
using the new version of VRoid and Blender without using any additional Plugins.
In the end, we'll show you how to export the FBX file from Vroid to Mixamo, to animate y...
found a video, never watched it but
title kinda says it all right
I'll watch it later. I'm gonna take a break from this
i understand, neitherways i hope it solves for ya (:
does anyone know how to fix Assets\VRCSDK\Dependencies\VRChat\Editor\EnvConfig.cs(445,28): error CS0117: 'PlayerSettings' does not contain a definition for 'SetVirtualRealitySDKs' ??? i dont know what to do and for the vrc skd pannel on the top it only says reload skd
Wrong Unity version. You need 2019.4.31f1
okay! thank you!!
aaaa i got the right version but it still says the error
You need to remake the project. You can't just switch versions with the same files
So I am Trying to optimize a avatar I got online I has gone well so far but when I try to use the cats Atlas to combine materials this happens
what version of blender are you using?
pretty sure cats needs an older version of blender
ahh yes, I am an idiot
I have seen it plenty so I should have realized
Finally figured out a better way to do animation-aware decimation :D should be in CATS dev version soonish
I already had a way to create the heatmap, but just giving that to the decimate modifier didn't work particularly well
Any reason why it's not symmetrical ?
How else could you have a tiny model of a heart on a chain that nobody will pay attention to in VR
I think that's actually an issue in the original weight painting of the model
results: incredibly promising so far
How to optimize avatars: You don't need 400 materials and 300 skinned meshes
That too
I really fucking hate the popular opinion of the community that, they must have everything on 1 single avatar
I personally do my best to be medium (poor at my worst)
I have an avatar called the Cirvulp (Gumroad) that has a bunch of clothing options. I separated them between 2 avatars and decimated when needed to be under 70k usually, decimating little things like the collar and stuff
in the next CATS I've added a way to add clothing as props without needing another draw call
Because they're too lazy or just don't give a damn, then you have the people that have fallbacks telling you to show their avatar. I usually just full hide them if they do that :D
Just additional bones for every bone it's currently weighted to. Ends up being added to skinning cost, which is waaay lower than an extra call
I love the decimate option that gives it a goal, fucking awesome
I select the mesh, and tell it too nuke till there's 70k -- it usually doesn't even damage the mesh's shape
:3 That was around before me, but I added the shapekey preservation
That feature, is, god tier
Issue with blender's decimation is that it's all suited to preserve shape, but doesn't care about animation. So the thing I'm working on now finds the most animated vertices and excludes them from decimation. So your arms don't get crunchy
it even, totally accidentally, ends up preserving loops a lot of the time
I need an SDK setting that I can check box, that, before uploading, it removes the controller from the animator xD I keep leaving it in there on accident
cool
some of that came about because until recently it was a pain in the butt to recalibrate the full body tracking Everytime swapped a Avatar so a lot of folks compensated by shoving every train in the Avatar but now it's saves calibration in between avatars so it should be easier to just swap Avatar is now in full body tracking
Suggesting that everyone is on IK 2.0 beta
It also no longer reloads the avatar upon calibrating. Useful if your avatar has intense effects on spawn
I did it again 😭
Just don't have annoying spawn effects Yeah
I'm glad perf blocking very poor rated avatars removes 90% of the annoying avatars out there. And safety setting disabling audio sources on anyone that isn't my friend removes 90% of the annoying/toxic avatars out there
I will not allow the shit go boom
The shit don’t go boom anymore
half of the songs their avatars use aren’t even good
Minimum Displayed Performance: Poor
Maximum Avatar Download SIze= 65mb
Is my optimal life style
You see my avatar itself is very poor
And it’s public
Thus I leave safety settings as such so I can see those who use it
There should honestly be an option to allow users who are wearing the same avatar as you to bypass the shield
Lower that download size WAY lower
30mb is my limit, but 10mb is my personal 'you need to reconsider your choices' limit
It's not about power
7 TPP avatars couldn’t stall my game
That will instantly fill your VRAM
You could have an RTX 3090 and an i9 cpu. It's still going to fill VRAM
that’s what vram is for, to store rendering data
I haven’t hit it
Well then the 32gb ram can handle that
The point is, there's no reason to even need to fill VRAM
I like seeing peoples avatars not grey blobs because no one uses standard surface shaders
You understand a full game like Apex Legends or whatever uses 6gb for their max resolutions. VRChat uses well over 8GB because people have no consideration
There is 0 reason IMO to be over 10mb for an avatar
No exceptions
Avatar size ≠ vram usage by said avatar
95% of the size is from texture
A 10mb avatar could use 8gb vram easily if you’re stupid enough
Yeah
Vram isnt about just textures
Which is why I have it set so low
A 200mb avatar could use 20gb
Then your PC is gone
Or it could use 100mb
With bad enough shaders a 1mb avatar could use several gigs of vram
It solves nothing
Blocking 200mb avatars lowers the impact
But it's much harder to fill VRAM with 10mb vs. 200mb
Hell audio files take more space than textures often
Unless you compress
I got them backwards
Mp3 has issues for looping audio though
It adds dead space at the beginning and end
I know it's still high, but I download those avatars in like, 2 seconds so it doesn't bother me, but any higher is unacceptable to me. I have very few avatars i've uploaded that exceeds 30 because I crunch compress (Yes, I know that doesn't do anything to VRAM usage, but still)
It's not about how long it takes to download, it's about resources. A single avatar taking up 100s of MBs of VRAM is hogging resources from other people which is both damaging to other users and unfair
download size is not vram
stop making that connection
The avatar could literally be 10gb and use 5mb vram
Or very easily the other way around
It has a connection regardless
You can't write it off because it's not exactly representative
It has no connection
is there a good video talking about this? I'm genuinely curious
because mp3s don’t fucking loop
mp3 is cringe. ogg and wav are 👌🏻
Until you can show me a 100mb texture compressed into 1mb, there is a connection. A 10mb avatar has a limit of how big a texture can be in order to get to 10mb. There will not be any 1gb textures in a 10mb avatar, but there may be in a 200mb one. Yes, it matters.
There's a reason game developers limit texture sizes when developing. Otherwise why not make every texture 8k?
If the texture isn’t being rendered it doesnt even count either
However, what there should be is a setting for max vram usage per avatar. If an avatar starts to use over the set value it gets blocked. That would be nice
Yes it absolutely does
No matter what, all texture assets are loaded into VRAM once the avatar loads
I rarely ever max out on vram with shield off
Wrong
What is your usage
What GB
8
And what does it sit at
90-100fps
Do you ever go to worlds with more than 10 people
Call it cap, I’m giving you facts
Yes
All the time
Worlds with maybe 30 people start to cause issues
I rarely ever have my shield on
Right. 30 people should not cause issues
And it’s not just OVR Toolkit reading it wrong. Task manager confirms. And I have by RGB system set to show multiple stats as bar graphs on fans and such
Polygon count hurts me more than textures
With 30 people your polygons go up in several millions
THAT hurts vram
Any blender user would know that much
Anyone whos ever tried to export a ship from space engineers into blender likely maxed out their vram several times over
Unity doesn't work the same as blender
Polygon count still has more impact than textures
Why do you think games still need LODs
They have impact on FPS
I recommend you read up on how Unity as a game engine works and the impacts on different assets
You're currently proving otherwise
I could go on about this project alone for hours
And have you done any optimization passes on it
Yeah that's what I mean
Term doesn’t ring a bell, but what it actually means might
I recommend you read up on asset optimization and impacts of them
Refuses to elaborate
I don’t know every term out there
how is my cat model with no toggles, phys bones, audio, particle systems, ANYTHING too big for quest??? its just the model i bought and a texture i edited, HOW
Okay let me rephrase it. Have you done any optimization at all on it?
Like?
Dynamic render texture resolution, oblique projection clipping, render texture pooling, etc. had to rember what oblique proj matrix was called
What does the SDK say?
Occlusion volumes for render textures and their respective cameras
Not using RGBA32SNORM for depth textures
Shall I continue?
Anything involving profiling? Frametimes?
26.39 MB
Profiling is an integral part of Unity
Not really what I meant, is there anything else that's listed as "poor"?
I’m not a dictionary
It's a thing in Unity to see frametimes
22818 polgons, thats literally it :/
It's integral like I said so you should know it by name
way less than i put on other quest avi's
jesus
what?
surely a model like that doesn't need that many polys
you should see if you should be able to shave off 2818 polgons so that you don't show up as very poor
preferably get it down to 15000
20k isnt anything tho lol, not 26MB worth atleast
Compress textures
^
how do i compress?
The textures are probably wayy higher res than they need to be
easiest way would just be to open the texture in an image editor
Click each texture in Unity and enable "Crunch Compression"
and shrink it
Mesh batching and instancing as well
Those are checkboxes
that's not going to help much on avatars
Wasn’t that simple
Network lagged
Sent that like 10 mins ago
Instancing one singular camera to render multiple different portals rather than each portal having a dedicated camera
Game runs at like 90fps with up to 3 recursive renders
Developed half of it on a 2015 macbook pro, shit ran
There's a different from desktop to VR games too
I don’t disagree
tysm it worked!
What size is the texture, and have you crunch compressed the texture at all?
Select all of the textures you use on the model, drop them to 2048 and enable crunch compression.
If you're still having size issues, drop it to 1024
Hey! The SDK is indicating that I should only have Skinned Mesh Renderer for optimal performance. Currently, I have the character and a couple of pieces of clothing that I want to be able to toggle. I was going to do that by toggling the Gameobject for those pieces. But, that won't be possible after combining everything into one mesh to fix that complaint. What are my options in that case?
The only solutions that I've found while researching are to hide the clothing using blend shapes or material transparency. Wondering if there's anything else that I'm missing.
you could also use bones to do the scaling
that was the fix 🙂
give it to me straight doc, how much will this actually optimize the avatar when I have 3 sets like this and will have more (I added some extra transitions between phases to make sure you can't get stuck, but the top part is the basic animator)
This is incredibly unoptimized for an animator
I have a question about an avatar?
it's a comparison of the old and the new animators. the new one uses the action animator as a basis, while the old uses the any state method without transitions etc. so you're saying both methods are unoptimized, huh
Having a ton of transitioning from Any State is unoptimized as the animator has to check for a ton of parameter conditions every single frame
yes, and that's... a comparison of the old any state animator
and the new animator on top that will replace it
You can have multiple transitions coming out of Entry state.
So you can have something like this working just fine for toggles with no visible interruptions between transitions.
sure, but knowing Unity, that might recreate the issue where it keeps knocking on every door every frame
I don't trust unity to not be dumb
this is why I decided to gate it. this system also leaves no visible transitions when you drop transition times to nothing
at first it did when quitting, but then I just added an "exit time" and made it very small (zero left it at 1 second), removed any audible transition times
I added the double gates just to make it easier for myself to visualize it
having 28 anim states in each part of the system is a bit much
Question: does the color of a material make any impact on performance?
I have a material that's just a solid color and figured I could just set that color to the material color to save on file size and not have an unnecessary image file cached.
It's more performant than textures. The color itself has no impact vs other colors
So for flat colored materials just go with coloring the material itself?
Yeah it'll save you a texture and it's a tiny tiny bit more performant
Even with low polygons its still a pc avatar
Is this because of poiyomi and the 10 materials I never atlas?
Actually it is poiyomi
But I heard i only need one material for quest
Im really bad at doing atlas so I'm very dependent on a program doing it automatically and even then there's some errors
Anyone able to help me optimize this?
214 collsions???
You do not need that many collsions
Collisions*
There is a limits option in the phy bones and it kinda works like collisions
Why do you have 65 transforms with like 214 collision checks... Did you set some bones to collide with things they don't have to? For example a skirt doesn't have to collide with a head collider, but you may have set it up to do that.
to do any of that
It's a male avatar... and... it's a package I purchased.
so like..
Not my problem
they did it, i gotta deal with what they did
Check your collisions
;-;
oh
pff
the only thing I need help on iss
nvm i lied
pretend I never said anything
idk how
to do ANYTHING
;-;
I need uh.. a smidge of backup
totally just a smidge
i got iHop bein delivered
So i recently found out my Avatar actually takes up 340 mb of Vram.. which is super bad but its considered a good rated avatar regardless of it. which makes me wonder why the download size of my avatar is only 12.6 mb. what exactly does that include?
Vram ≠ download size
Download size includes mesh data, textures, shaders, materials, sounds, animations, objects, etc
Vram is literally just the amount of data which the gpu needs to store about the avatar to be able to render it. This includes compiled shaders, mesh data and materials currently visible, as well as lights and particles
It can’t really know how much vram an avatar will use until it tries to render it
well it can. based on texture size.. etc.
There isn't a way to calculate VRAM usage before it's downloaded, however it could after it downloads the avatar
You also can’t determine how much vram a shader will be using
Especially if it changes
Shaders don't really use up much VRAM at all by themself
Weak shaders then
They definitely can
Shaders which utilize lots of virtual textures can eat vram
again there is. take each texture you use. and good shaders do not create extra vram need
You can't get the texture sizes before you download the avatar package
look in your unity project
In my unity project, where it's already loaded?
I'm talking about in-game
meta data. can tell it
You can't get any stats about the avatar until you download the avatar package
Turn your download size down in-game and check the stats of a blocked avatar. All it shows is overall download size
easy solution make every avatar from a unity project include a int for the total vram
everything has metadata lol. thats how things are stored.
Send me an example of a vrchat avatar metadata file then
no you can just look in your files.
Where
for avatars.
Path?
Any suggestions for how to get a good Atlas from CATS. It seems to break something no matter what I do. Currently it is breaking the hair. The hair is white instead of it's texture color. Pre-Atlas my avatar is perfect in all three shaded display modes in Blender.
I will add that I am using a stand alone version of 2.93 to be sureit's not a compatibility issue.
I have a UV on clothing that I have to merge with the body UV before I can join the meshes without issue. I tested joining various pairings of two meshes and joining them did not cause any other issues.
Make sure all your textures are unpacked from blender. CATS can't access textures packed into the blend file
Oh, does the packing prevent access by other apps? I do have packing enabled, but I created the model from local textures which is why I'm seeking the clarification.
Sweet, I look forward to testing this. This would actually make sense and bring some sanity back to my blender experience. With proper atlases there really is no need for packing anyway.
Apparently unpacking isn't as straight forward as it would appear to be, but when it fixed the hair I went ahead and made new materials for the face and heels with auto packing off and....success!
anyone available to help real quick?
i atlas my materials in blender down to 1 and it makes the nose and whiskers on my cat black in CATS 😦
If you are checking via Thry's VRAM calculator, then I noticed it can sometimes include textures which aren't even used by avatar in any way. I don't know why it happens.
Also newest avatar from Godfall uses 800MB of VRAM (400 when counting only active), so you are not the worst.🥴
um, sorry - I'm new here and I just desperately need help. I'm trying to make a fallback avatar, but for whatever reason even when I reduce the material slots, vrchat seems to show that there's 2 slots being used. Any advice...? (Ignore the bounding box/size issue. Problem persists even when those are fixed)
(Problem also persists when shaders are changed)
Do you have your Avatar Descriptor on a mesh or on the parent object?
It needs to be on the parent...
Otherwise idk how you have the material component showing right under the descriptor like that, I thought that only happened with meshes
This should say ENA instead of Body
It's also possible you just have the wrong thing selected when you click upload
(or whatever the name of your parent object is)
Alright - so I'm stupid. It's now on the parent. But the materials are still showing 2 :(
What does your Avatar hierarchy look like? Just the parent, armature, and a single mesh, or multiple meshes?
Parent, armature, and uno mesh.
Are you intending to use the camera and light in your Avatar? 🤔
If not, I think that might be where your mystery material is coming from
No, but I deleted those to no avail :(
(Thanks so much for helping btw <3)
And your one mesh only has the one material slot shown on the skinned mesh renderer right? I'm assuming that's the case or Pumkin tools would probably count it as two as well...
So maybe something in the avatar is making it have a second instance somehow? 🤔
Yep, which is doubly weird since pumkin shows it as 1. I'm so confused ;-;
the prefab originally has two though
idk if that means anything.
Were they unique materials?
How did you get it down to one mat? Texture atlas, or removing mesh?
Yes? I just... Removed the material. eheh
is that not a valid way of getting it down to 1?
It's a material that I didn't really need.
Idk tbh, but technically the mesh itself is probably still looking for 2 mats, even if you restricted it to being only able to access the one...
Maybe
This is getting into weird fringe cases I'm not completely sure of lol 😂
You might need to remove the reference to the second material from the mesh completely if it's still got faces expecting it
Glad I could help!
<3!!!
I’ll have you know it’s 700 xD
But yeah that’s a known issue and is being addressed for her update. Literally just selecting all the 2D textures, and unchecking the Pc overwrite for the compression settings will recompress them using the right format and drops it to ~550. Still not great but better for minimal effort.
8k textures go brrrr
Crunch compression makes load in lag with these huge textures even worse
There shouldn’t be anything that’s still 8k but there is a few 4k lel
My plan is to drop everything 1 or 2 steps and if people want higher quality they will need to turn it up themselves. That way the responsibility falls on them for hogging the vram.
Though i can safely say a majority won’t change it
Should bring the model down to something more reasonable for what it has
Still though, one Godfall avatar is equal to 5-10 average avatars, which is absolutely horrible...
I mean, in more than just vram, yes.
In a perfect world I’d love people to literally delete the shit that they don’t want to use either in unity or better yet, in blender. Though, a lot of people who do use the models are also downloading these programs for the first time, so expecting that will only bring disappointment.
But yeah, compared to the average avatar they’re considerably performance heavy. We’re still trying to improve the avatars from quality, functionality and optimisation perspectives. There were a few mistakes in the latest release, we will correct and learn from them.
godfall 😰
i bought yurei and nuked the crap out of her
still rated as very poor but its a lot lighter than it was when i first bought it
Hey guys, im working on a osc project and I was wondering if anyone could help me with understanding rendering to an array of objects. I am looking for a way to show and hide objects, but I assume that having 200 mesh renderer's is not good for performance. Does anyone know a more preferment way to render a display.
I was thinking that maybe I should use blend shapes, but unsure how this would scale if I wanted to have different colors rendered to each plane
You could use a shader with vertex displacement
I was thinking about that, but problem is that that would remove any chance of quest compatible with an avatar
Then I believe the only way to stay quest compatible (and not incredibly poor) is using shape keys
Yeah, it is definitely an interesting problem, to say the least. I'll have to have a play around with it. lol.
If she was still very poor than you didn’t really nuke her :P
She’s got a
version coming pretty soon and after what we learnt with Valk’s 700MiB release, the goal is to have her be pretty decent optimisation wise at minimum.
What contributes to a mesh’s vram?
I’ve seen some meshes have no vert colours, minimal vertex groups and maybe a dozen blendshapes be +15MiB on Thry’s Evaluator. What should I be looking out for to try and reduce this?
if an avatar's mesh is over 70k poly its still very poor regardless of its other stats but i got rid of mesh/mat toggles i don't use, lowered some texture sizes. felt a bit nuked in the end xd
still a good avatar though
is roughly
Runtime Memory (bytes) = (roughly)
4 * vertices * [a float is 4 bytes]
( 3 [position]
+ 3 [normal]
+ 4 [tangent]
+ 2 * uvMapCount
+ 3 * blendShapeCount
+ 3 * blendShapeCount [legacy blendshape normals unchecked]
+ 4 * vertexColorCount
+ 8 * boneCount [4 bone weight w/ index]
)
+ 4 * 3 * triangleCount [indices, divide by 2 if vertex count < 64k]
(please stop using empty blendshapes to categorize your blendshapes)
I can promise i won’t start doing that 
😢
So, quickly looking at it, those meshes i had in mind would be mainly vert and bone count with maybe those few blends too.
Sounds like a lot of work… okay, I’ll look into it more. See if I can pull them down with that formula in mind.
I recently started making avatars and I'm getting progressively better in vroid/blender/unity. It amases me how many ppl are using avatars with 300-500k polygons.
Also does anyone have any good tips or reads on optimizing hair in vroid? I've noticed it makes big chunk of the overall polygons
This is were I started:
And this is were I'm now:
took me like 10 min to do, even though it's still not really good, but wayy better then it was before ^^
I would whish for more people to optimise their VRAM usage
I suppose it would be helpful if the SDK listed vram so that they would be even aware it's there
Yeah ture, in general it would be cool if VRAM usage could be used for performance ranking or being able to set a limit for it
very nice
what tools are we using to check vram so I can go check my avatar
Thry's Avatar VRAM tool
Always use that tool to see if some texture i dont really use is in it, not the first time i forget to remove something.
output log has it too,but bit more tedious
but how?
Lowering sizes. Any textures that don't need to be huge I tone down
My atlas is the only 2k texture
Everything else is less than 1k
Also not having transparency in images helps
nearly none of my avs are over 50mb vram use (ish anyway) 🔨 (older av)
The glory of atlases
and yeah mask textures don't need to be particularly high res
point (no filter) so it doesnt bleed into stuff , tiny size
also if people are using Poiyomi Toon Shader the RGB detail normal mask feature is definitely a good one to utilize so that you don't have to use like big textures to have nice detail
Single material, 3.3k △, using RGBA masked 256px normals in @poiyomi's shader. 🧵👇
269
Back to shader: Can use seamless tiled normal maps per RGB area - tiny (128/256px) normal maps, but tiled around 50-100 times in the shader, giving you a higher effective TD.
You can combine these with an base nrm map for creases and baked normal details etc: (Blend with Base)
the best thing you can do is to reduce the resolution
compression does nothing for VRAM usage
since all textures get decompressed
ah
it was working for a bit then i got down to the point where it didn’t go down anymore
turn down the resolution of each texture individually (don't set them all to the same res!) until the quality loss is too much
and also, don't go pixel peeping
stay at a certain distance from the model
like what would be a comfortable conversation distance
okay thank you so much
and in future if you're making avatars detail normal Maps can be quite helpful for making it still look nice when you stick your nose in it
crunch will lower upload size if you are trying to hit that quest <10mb , doesnt do anything for vram
and also helpful so you're not waiting forever to download the avatar
thanks!!
https://github.com/Thryrallo/VRCAvatarTools the link to the vram tool
Contribute to Thryrallo/VRCAvatarTools development by creating an account on GitHub.
vram checker thing is sorta handy to see if your fbx is bloated (amount of blendshapes is a dead giveaway too tho, 140+?) , tested an av earlier where i cut off the head on its own mesh since thats all the blendshapes were, it dropped 2mb~ on vram use, since it doesnt need to bother with the ones thats not affected (57k poly av)
I would split my face if it didn't kick me to Medium perf rank. My avatar is only 20k polys so it's not a huge deal anyways
separate the meshes of the ones you don't want included, and unparent them from your armature (hold shift and drag them outside)
So I ran the VRAM tool and want to know if what I'm seeing is right. I have a mesh with 120k Verts, 85k Tris, 6 submeshes, 4 UV maps, 220 bones (limited influence to 4 bones per vertex) and no shape keys. But the tool is saying the mesh specifically is using 40MB of VRAM. Using the rough hand calculation I should be at no more than 10MB I think. Any idea what might be causing that?
0 blendshapes on this mesh. The mesh is everything but the head joined together
And to be clear I checked to make sure none were hanging around, same with vertex colors.
This avatar I purchased is missing a bunch of scripts, anyone have an idea as for why it is? Is it just because of the way the creator made it?
it was most likely set up with Dynamic bone, which is a 20$ asset you don't need anymore due to it being replaced by Physbones
Ooh thank you so much!
Does someone have an article or anything telling you, why high poly count models are bad in unity/vrchat? Have one of those poly knockers arguing with me that "polys don't matter"
They have roughly 300k+ polys from clothing and stuff
The more polygons your avatar has, the more your GPU has to render. Obviously having more results in more work for the GPU. On top of this, since most avatars use Blendshapes, blendshapes incur a large performance hit the higher your polycount is, as it has to calculate all of the vertex positions every frame. More polys = more vertex movements = worse performance.
The blendshape part only applies to meshes with blendshapes, but the rendering is always a thing
Is there an article or anything about this?
Is having a high material count bad for preformance? I was ripping a model form a psp game and for some reason it has 27 materials depsite a low poly count and texture resolution
Yes, every material is a draw call
From the docs: "Draw Calls"-- essentially, time spent by your processor telling your graphics card to draw something on the screen
Every draw call (If all materials are enabled at the same time) can heavily bottle neck performance
A lot of different things can be in a game for reasons.
heyo gang im trying to make my first avatar so im not the best at this, whenever i try to atlas materials my avatar turns into some eldritch horror, what's the best way to avoid this?
gotta edit the UV
check that the UV maps on all of your meshes have the same name
default name is UVMap
Never tried making and optimizing an avatar before, but i guess i have to do so now
commissioned a vroid and i want it in vrchat
too bad those models have like a million bajillion trillion tri's.
i dont think vroid does?theres a lot of unused mesh you can cut out i think
unless theres a ton of toggles and whatnot
oh, nice
shouldn't be too hard then
@quick patrol it looks strange but it reduces the draw calls on your model. i have outfit toggles but all of the outfits are all on this texture here
if i had one texture for each of the toggles, thats double the drawcalls with the mesh
yeh its okay
but no toggles is better performance lol
if you don't have any toggles, you can merge all of your model together
so instead of uh.. 1 body mesh, 1 head mesh, 1 hair, 1 shirt, 1 shorts, (each of those is a drawcall) but if you merged them together it turns into 1 drawcall in total
So merging them with ctrl j?
Then how do I assign different textures to different parts?
if you're atlasing, you move their UV's to match
if you're not, you can add a second material to the model itself
also yes ctrl j is merging oops
Know any good tutorials for atlasing so i can reference it when im home?
i guess the one in pinned would be a good start
you could try the CATS atlas if you have 8 or less materials
I have 4 or 5 i tbink
It's 2-3 drawcalls to be exact, but yeah it's always good to keep that as low as possible
yeah i couldnt remember exactly how many it was per
but the point was reducing em so oh well xd
Does anyone know why if i enable "Keep Quads" on my model it almost doubles my material slots?
Because you don't have a fully quad mesh
And there's pretty much no reason to use keep quad for a VRC avatar.
But, as far as to actually answer the question...
When you use Keep Quads on a non-quad mesh it "doubles" all materials as it under the hood creates two separate sub-meshes for a sub-mesh that contains both quads and tris as it's meant for special shader functionality or in very specific cases... besides those quads WILL become tris before being rendered to the screen.
Ah okay, I read that also reduces polygons, thats why i was looking into it 🙂
Reduces polygons. Doesn't optimize, since it's the same amount of tris.
It's more like a de-optimization unless you need a full quad mesh.
Does anyone know how I could decimate a model, and not delete any shape keys? Also I was originally using cats plugin to down size the avatar, it made the avatar look un-playable
as much as this could help, I went through the whole list and none of them popped up in my side bar
Okay, never mind, it was actually there x)
thank you
Please consider pinning this, people keep sharing it 💜
https://docs.google.com/document/d/13-LzjODZ0RbBooAOK5uszoIuvb8yfy4vYxwXsaDdZZg/edit
There's a pinned video made by tupper which goes over all these steps already 

Some of these steps don't make sense for the updated version of blender
It doesn't address the awkward settings that need to be addressed in +2.8 🤷♀️
Like how blender needs to be told what image to bake the atlas
can anyone find an updated link for this?
https://vrcat.club/threads/material-combiner-blender-addon-2-1-1-2.2255/
Shotaryia's patreon just links back to vrcat
Do you know if any of the steps in 2.8 aren't compatible with 3.0+ ?
i've just run through the guide myself just today
the only changes i've found were UI changes
Which i've just updated. Buttons in 2.8 were changed to checkboxes in +3.0.
This post in #vrchat-general-1 also backs this up
#vrchat-general-1 message
Does anyone know of a shader that's optimized for quest? I was originally using poiyomitoonshader and saw in a video it wasn't quest compatible
you can only use the provided vrchat mobile shaders for avatars
So at the moment my avatar has a "Very Poor" rating, and I want to optimize it. The console tells me that there's way too many skinned mesh renders and that I should combine them. However, I don't know how to do that and can't seem to find a guide. Anyone know what I need to do or have tips for optimization that might help?
joining meshes is as simple as selecting two (or more) in blender and doing ctrl + J
material slots are a little more annoying to get rid of, since you will either need to atlas the textures into a grid and move the UV's to match, or repack the UV's and bake the old textures to the new one
The thing is, I have already completely set up the avatar in Unity, so if I changed the model itself in Blender would I have to redo everything again?
no, as long as you never unpack your avatar in Unity, you can just override the FBX and it will update
make sure to always export your FBX with the "Apply scalings" option set to FBX All, and "Add leaf bones" unchecked
Well, the avatar has to be unpacked to edit it, so I've already done that.
no? you never need to unpack the model in unity
adding props and empty objects does not require unpacking
if a change you want to do requires you to unpack it, that should be done in Blender
anyways, what you can do now is drag your FBX into your hierarchy again, and use Pumkin's avatar tools to copy components from your old model to salvage it
so you don't need to completely restart
in an ideal workflow, you should just be able to pop open your avatar's blender project, make a change, export, and Unity auto updates your model in the scene
minimal effort required
At the time it seemed like it wouldn't let me move the eyes or mouth without unpacking the model first, but I think it was probably something else that allowed me to do that. Well, guess I'll try copying the components over. I was hoping not to have to touch Blender at all since it's confusing as all hell, but I guess I could probably figure it out.
keep in mind Unity is a sort of asset-placing program. it is not a substitute for a 3d modeling program
Yeah, I never tried 3D modeling in it
Just used it to port an existing model to VR Chat
I've never been able to figure out Blender no matter how many tutorials I watch, but I suppose since I'm just optimizing an existing avatar it shouldn't be too bad. Don't have to do any of the actual modeling.
learning blender is best done when you have a specific goal
something you need to do
So which meshes should I keep separate and which should I combine?
I'm guessing I should keep anything with physbones or animations seperate
Do you want your avatar to be efficient and be loved by everyone because of all the frames you're saving them? Follow these tips and you should be good! Any recommended numbers or limits in this document are subject to change at any time. Although some of the descriptions provided below are not prec...
Try to keep the face separate to reduce the verts the visemes are calculating on, else it's up to you
Hey good night! im optimizing my avatar and i only need to figure this out "lower arm is not first child of upper arm fix" can any dev help me out? Thanks alot!
Blender exports bones in an alphabetical order list, vrc ik wants the humanoid bones so they are listed first
Can i send you a private msg or maybe a screenshot of whats going on?
this is what i got so far, im not a dev so was a struggle to got it almost done
oh youre pretty close, it just wants left shoulder, left arm, and left elbow to be listed at the top of their groups
right now its like left shoulder, left arm, armbelt
omg Thank you! I think thats solved but still saying the avatar is unsupported why is that?
this is what's going on right now
build target standaloneOSX? On mine its set for building for windows, gonna need somebody with osx to help here
Ok thanks alot, idk if i have to install some android or what, maybe someone here can save me
Go to the File menu and click Build Settings. Screenshot that
I've managed to bring my avatar down to Medium optimization by combining some of the meshes, which is nice. However, what are the exact requirements for making an avatar Quest compatible? I see a few of the suggestions the APK is giving me, but I assume I wouldn't have to meet all of those.
all of the performance requirements are stricter, and there are also some components you outright cannot use
such as constraints, audio sources, and FinalIK
The Avatar Performance Ranking System allows you to see how much a user's avatar is affecting performance via analysis of the components on that user's avatar. You can also use it on yourself to see how performant your avatar is. This system is provided to inform users what is likely the most perfor...
if you want to make a quest Fallback, (the avatar people will see when the PC avatar you're wearing has no quest counterpart), you will need to hit a perf rank of Good or Excellent on quest
which can be a royal pain in the ass
I don't want a fallback; just an avatar that can be seen on Quest. Surely I don't have to meet the "max of 2 meshes" suggestion, right? That seems like it would be impossible to achieve for any avatar greater than a fallback.
I believe you can do 3-4, but that could make your avatar poor or very poor
if your avatar is Very poor on quest, it will be automatically hidden for everyone
regardless of safety settings
people will need to manually show your avatar
I think that most quest users are used to already doing that, but it's still something you should consider
it's also not even a guarantee that Very poor avatars on quest will exist forever
It says my avatar is very poor on Quest, but the export option is locked
make sure all other avatars in the scene are hidden
I wouldn't mind if it's very poor so long as people can enable it
what are your performance stats?
very poor avatars can be removed at any time unforntunately
if you said it's medium on PC, it's probably not that bad
by the way sacred, if you do not mind for a moment, do you know to bind materials together?
yes
i currently have 6
im trying to wiggle it down to 3, without the cats plugin since it messes with my shape keys
you need to either move the UV's for each material to be in a grid, and use an image editor to tile the textures together in the same manner, or re-pack the UV's and use baking to bake the original textures down to a new one that matches the new UV layout
CATS does not fuck with your shape keys
CATS is a large toolbox of very useful functions related to avatar creation and model editing in general
well i bought a model online and the model has armor, but the model sticks out in certain areas the creator was able to fix with shape keys
the Bake feature in CATS is exceptionally useful to quickly reduce the material count of an object, but at the cost of making it harder to edit in the future
when i use CATS it resets it all back and i loose my shape keys
"when I use CATS" is extremely broad
you could be doing any number of things
if you mean "Fix model", don't use it
it's not magic
hmmm okay here let double check the setting really quick cause i dont remember the name
How do I find the performance stats?
in the VRChat SDK's Builder panel
Do you just mean the list of notices?
screenshot the whole builder panel
okay, I double checked and I was using optimization
Had to stitch a few screenshots together, but here it is
okay, yea bit too high for quest
the first warning is extremely important
all physbone components will be removed from the avatar
Okay, so should I remove all physbones, or only some?
I can remove one or two physbones pretty easily, so it would fall below the max
you can be equal to the limit and be fine
Alright, met the limit
I would also highly recommend using Thry's Avatar Evaluator
to check the amount of VRAM your avatar will use
Alright, will do.
VRChat will literally crash on quest if the RAM fills up
Also, apparently physbones don't even work on Quest, so should I just remove them entirely for the Quest version?
Would clear up usage without making a difference.
Physbones do work on quest
the older Dynamic bone component was not supported on quest because of how utterly SHIT it was for performance lol
Oh yeah, I just read it wrong
Physbones do work, cool
It seems like 50,000 polygons is a lot for the Quest; more than they recommend for most worlds. So maybe I should try bringing that down. Any suggestions on how to do so? Think I've heard about a process called decimating or something, but not quite sure how reliable that is.
The polygons may very well be what's preventing me from porting
Oh, actually, it seems like I may just have to make an android-specific project. I'll try that.
the polygons are something you would fix in blender
you can fix the issue by using a modifier named decimate
the only thing is, it will lower the overall quality of how nice it looks
If there's no other option, I guess I'll just have to deal with the lowered quality
Don't know what else could be preventing me from porting to Quest than the polygons
well it could be multiple things like the polygons, physbones, materials, etc
Is there a way to tell what specifically is preventing me? There's some notices, but it doesn't say which ones prevent me from publishing it.
usually the builder will tell you what is preventing it from being quest compatible
if its only the polygons a warning message should pop up and tell you its over the reccomended polygon countage
Yeah, it's telling me at the bottom that people should still be able to toggle my avatar on Quest, but the "Build and Publish for Android" button is greyed out
Yeah, they're all hidden.
It may just be your polygons then
claps
My avatar functions great on Quest as far as physics go, but it appears completely white and textureless. Is this a common issue? If so, what is the fix?
Might be a shader issue, but I used the VRC-provided diffuse shader, so I don't see why it wouldn't work
You may have emission enabled with no emission texture specified?
Where could I see if emission is enabled?
Seems like Toon Lit works, so I guess I'm going with that
I think retopology -> data transfer weights -> retexture -> redo blendshapes and everything else is what they want us to do to reduce poly count withhout reducing quality too bad?
That's one way, yes.
dissolving edge loops is by far the best way to quickly reduce poly count
preserves topology, weights, and blendshapes
UV's will also be fine as long as you don't dissolve seams
i got it working but the tutorial i am following hasnt explained this ;-;
follow the 3 videos on the VRChat learning channel
watch them all in order
VRC Traders doesn't have a good place to ask... So I'm gonna ask here how much do you guys think someone would charge to simply optimize a model if the polygon count is already fine, but it just needs combining + texture atlas?
For some reason every time I've tried to do it... Looks fine in Unity but breaks in game.
you're trying to texture atlas?
If you know your way around blender a bit, you can try atlasing manually using this guide.
https://docs.google.com/document/d/13-LzjODZ0RbBooAOK5uszoIuvb8yfy4vYxwXsaDdZZg/edit
don't have to pay someone if you can learn it yourself for free c:
It also links you through to how to combine skinned meshes
Yeah and fuse meshes together, I may need to reduce meshes for Quest but that'll be for later. Just wanna get my avatar from "poor" to "good" or higher rn.
That guide is a step by step on what you need to do on what you're describing
First by joining your skinned meshes, then finish by running your texture atlas bake.
@mystic crescent
Ah okay thanks!
💜
@misty matrix if it's a new avatar, you have to set up the vrc avatar descriptor. I had that behaviour on an existing model when there was a missing "animator" or if the animator isn't linked to your model
Oh thank you!
In blender my it says my avatar is 13,440 polys but in unity its saying higher idk why and i cant fix it
press a in blender to select everything and then check tris count
Still the same and nothing is hidden
VRChat Unity 2019.4.29f1
SDK: VRCSDK3-AVATAR-2021.08.04.11.23_Public
I included the animator error part in case it happens.
Thanks to user ₵ⱠØ₳₭ⱫɎ#7203 for having me record the video in the first place
No
do you have a subdivision modifier on any of your meshes?
or any modifiers
(besides Armature)
I used a decimation tool and it acts like i didnt use it
When i put it inside of unity the model looks the same as before i put a decimation tool on it
Did you apply the decimation modifier?
Yes under the wrench on the side
it tells you how to improve them
im not sure how to combine skinned mesh or transform phybone count means
You can do that through blender with the CATS plug-in
The physbone components just mean they would prefer only up to 4 physbones
skinned mesh renderers (meshes with armatures are skinned) -> reduce these by joining together meshes that do not need to be separate, do this in blender
phys bone components -> try to reduce the amount of physbone components. Look for parts of your avatar that do not really need phys bones or reduce the amount of bone chains to use less phys bone components
phys bone transformation count -> Your phys bones components affect too many bones in your armature
Awesome thanks a ton 👌
soo im trying to make the avatar quest compatible... i removed all the phys bones but it still gives me this? what this do?
what are they and how do i remove them?
you look for components in that case they might be on bones
i see no components on any of the bones
if u have multiple versions of avatar in scene disable all but no the one u try to upload
i only have one version of it in the scene
u look at every bone and object in hierarchy?
weird try maybe re-openning project
agh
aight fuck it imma keep it pc only then
ill just remake the model lowerpoly n shit
u might be missing them somewhere
click [select] it should highlight them and where they are
just selected the top layer... the entire thing
What the fuck did this last update to my favorite avatars eyes?!?!?!
Does anyone know why this happening or when it will be fixed? Is it somthing the creator has to do? It shouldn’t be seeing how it was completely fine a day ago before the update.
I’m about to lose my shit if this doesn’t get fixed. I’m so pissed right now.
That looks like something the creator would have to fix.
That's a new one though, not seen cross-eyed avatars being caused by the latest update.
Tongue, Tail, Ears
i did it :)
cool
can someone help me with this issue I have been trying to make one of my avatars quest compatible
basically you need to lower the polygon count and combining your materials together
Did this video help you? Consider sending me a tip on Ko-fi! https://ko-fi.com/sippbox
Making optimized Quest models is hard. But it doesn't have to be! With recently updated polygon limits and fallback avatars, it's a better time than ever to create something that represents you to Quest users! Hopefully this tutorial will help you out!
0:00 ...
700,000 polygons?!
HOW!
Probably clones
Hi guys
is there a way to to combine textures into one within unity?
because i have a model i want to use but its already in unity package file format
and theres like 24 maps
somewhere in the assets folder for the project would be a fbx for the avatar so you can combine stuff in blender
whats the best way to handle toggles? blendshapes, separate skinned meshes? in terms of optimization
bones are a decent option and apparently blendshapes are quite expensive as toggles
What Rainwolf said. Bones are the most optimized way to do toggles. Skinned Mesh renderers are second best. Blendshapes being the worst
how are bone toggles set up? i forget
Assign a separate bone to the object you're toggling and in Unity scale the bone down to 0.0001 to toggle it off, scale to 1 to toggle on
wouldnt the renderer still have the draw it?
Yes it would, but rendering is the least of VRChat's performance issues these days. CPU is the one you need to avoid, which Blendshapes take a huge hit to
makes sense i suppose. when people do toggles like for shirts and have a blendshape on the body to shrink it to prevent clipping, is this really inefficient?
Yes it is one of the many reasons VRChat runs so poorly. Another thing to keep in mind: the more polygons you have the worse blendshapes will affect performance. So those 200k poly avatars with 45 toggles are for sure killing your fps
any better way to prevent that sort of clipping?
using an alpha comes to mind but that seems expensive as well
Clipping?
Oh toggling clothes?
yeah
Put it on a separate avatar. There's no reason a single avatar needs 5 different outfits
especially now that full-body tracking calibration sticks around even when you switch avatars now
i dont mean entirely separate outfits but like with a shirt toggle if the body remains underneath i imagine certain deformations will still cause clipping even if your weight painting is good
Blendshapes can still be used if you have a small amount of polys (<32k). Otherwise I think using a cutout shader and using alpha to cut that part of the mesh out might be the best idea I can think of
ah ok
unless im mistaken and its possible to weightpaint it so that theres no clipping at all
but probably the best would be see if you can weightpaint it properly
like it probably goes better if the topology of the clothing lines up with the body underneath
yeah im not sure how possible that would be would clothes made in marvelous
you would probably want to do retopology anyway on Marvelous Designer clothing
yeah ik but even then the verts wouldnt line up perfectly and i feel like it would probably end up clipping
That's interesting. So even if you were rendering all poly in your clothing at once, it's better to have it just shrink it down (through bones) so you can fit everything on few materials as possible?
Assuming it's not five separate outfits
yes because extra triangles goes to the graphics card but more materials goes to the CPU
Well they both go to the GPU, but Unity can do multithreading for Draw Calls so it's not a huge issue anymore. It still makes a difference though
the CPU still has to process the materials
Most videos that teach you how to do this are always using separate skinned meshes lol. Well this is good to know.
the cpu is the bottleneck with drawcalls is it not
It does but it does a better job at multithreading them than before
yes
A few extra non-dyanmic bones shouldn't hurt I guess
yup
certainly less expensive than the materials
ie i think all the work that has to be done after draw calls gets delayed until the buffer is flushed
but multithreading helps i guess? idk i forget
It definitely helps. I'm not saying draw calls don't cause lag anymore I'm just saying they're a lot better than they used to be a year ago
i didnt realize blendshapes were so inefficient though
of course it can be better but still be quite the relevant issue
Do you want your avatar to be efficient and be loved by everyone because of all the frames you're saving them? Follow these tips and you should be good! Any recommended numbers or limits in this document are subject to change at any time. Although some of the descriptions provided below are not prec...
Most ppl don't I think
the vrchat documentation relating to blend shapes
how bad are things like twist bones?
that's because the performance ranking system currently doesn't consider blendshapes
A lot of avatar creators leave body sculpts in their blendshapes and ppl just turn them all to 100.
Right
like it would be more optimized if you apply the body modification blendshapes to the base shape in the modeling software if you're using it as a private Avatar
Applying stuff to basis is nice
like people also currently don't consider vRAM usage do to the lack of Avatar performance stat
I wonder if it's possible to detect active blendshapes on upload and count them that way. Still doesn't stop ppl from changing them post upload though.
always wondered why vram wasnt a consideration
Ehh most people just don't care about optimization at all
makes the game laggy misery though
They just want the highest quality with the most features
The only avatar I use is Good on both platforms