#avatar-optimization
1 messages · Page 19 of 1
ah yep - take them into Blender and split them up
could you guide me you think?
never used blender before but i tried in 2017
i do have it installed though
just for clothes splitting
I don't really do that, but there are tons of good tutorials out there
fair, you got any vids? i was struggling to find any recent ones
honestly those are listed as separate objects so you could delete them in unity?
pantshoodieshoes are in one
I think the point is those objects have multiple parts inside
okay yeah that would require Blender
yep
it's not too bad - select the parts you want, hit 'p' to "part" it out into a new object.
okie, thanks
will try
since i dont use long hair at all could i theoretically straight up delete this or would that require changing other assets for the avi too?
Is there any bones associated with the hair? if so you can probably delete that too in order to just decrease the bone count
yupp i did
i got a lot of progress
and i worked on it in blender for 6 hrs straight
i got it down to 70k
but now i need new prefab i think?
idk how to properly replace my current fbx in the files
what do i do when it says the avatar uncompressed size is too large for the target platform,its 533.41 out of 500,thing is im using the older unity 2022.3.6 not the newest one since that one has restrictions
if you didn't unpack the avatar prefab you can just overwrite it.
if you did, overwrite it anyway and use pumkin's tools to copy whatever to a new packed avatar and don't unpack it 🙂
try messing with these transform settings, some people like to export their fbx in different ways
for me i just preferabbly use fbx all for no blendshape issues
correct?
pretty much, if it looks weird, or unity complains about humanoid, check configuration in unity
if the meshes get wayy to big, just check apply scalings again
if nothing works idk, cuz this was the issue that i usually deal with
im not sure what you mean, only thing i did was take fbx from unity project and put it in blender
cool, so save it to the same filename as it is in the unity project
deleting original first right?
no?
so i wanna keep old and new fbx at the same time?
oh, make a new file then
i wanna put it in the fbx folder and delete the old fbx and fbx.meta in that folder first right?
not sure why you'd delete anything if you want to keep both?
i dont tho
i just wanna put the new one i modified in blender
replacing the old one
overwrite the old file then
meta file too?
ignore meta files, those are Unity's business.
oki
(it's where Unity stores settings for the file)
i see, will try to open project now
surely its not that scuffed
how come blender said 70k?
triangles?
right, did blender say triangles?
Ok
yo im trying to make a fall back is there any tips or recommended stuff that anyone could provide?
iirc it needs to be excellent or good on all platforms for it to work as a fall back (read this for each platforms stats: https://creators.vrchat.com/avatars/avatar-performance-ranking-system/) theres tools like polytool or vrcquesttools that do it manually but it can get pretty messy if the model's super complicated
the model overall will likely need to be very barebones with no special toggles or anything like that
yep it has to be suuper barebones. the hardest thing imo is to get the polycount low enough but if youre making an avi from scratch then it simplifies things for sure
could i get a hand with something?
a hand with what?
i want to optimize my avatar back into good
i wanted to add a night vission mode in the menu and now i realize the light gives me a poor rating
i dont quite know how to fix it
remove the light component
there isnt a fix other then removing the component
i know there are good rating avatars that have it so i was wondering if anyone know how they do it
what do the rest of the stats look like?
its a light component
everything else is good
the only bad point is the light and i was wondering how to fix it
i mean yes with out it it goes back up to good
i dont think theres a way you can get it to be good ranked with the light component
are you sure you've seen model's with a light component on them that're ranked good?
Yeah 1 light = automatic poor, there's no way around it if you need a directional light, which you do for that shader to work.
the fix is just removing the light component, no setting for it will make it good ranked if it's still on the avatar
There is non avatar that would be performant with lights. Just remove them
I have a question about phys bone performance.
I'll give a model system: A bone that forks off into two or more chains of bones.
I can rig phys bones in two ways.
- One component for the base of each and every chain.
- One component just before the fork that produces phys bones in each chain automatically.
According to the SDK's optimization, Option 2 is more computationally efficient than Option 1. But why? The same number of bones are being affected in each case.
What changed?
I'm assuming it's because of one system vs. two
I would have thought it depends on the cumulative complexity of all involved systems. Not merely the number of systems.
So basically it's just because if you have one component affecting many things then you're also limited to one setting for all of said things. With multiple components it has to find, select, and utilize different settings for each one. At least that's my understanding.
Its creating multiple redundant variables for each component. Iiinteresting...I didn't think of it that way.
Or just generally doing the same work multiple times when it could instead be a one-and-done for the same results.
And then for the last guy with the dynamic lights. I suspect the reason they're so poor for performance is; they require ray tracing of some variety to work?
Yeah they're real time lights
Yeah, that'll do it...
Although vrchat is working on some stuff to make it not raytraced I think for the standard lite shader
because every component you add addional components having to deal with updates and doing whatever they do. its always better to have a single component managing well every object if possible
that would most likely just be for the mobile hardware. and also realtime lights are not ray traced.
This is why CATS has an option to create a duplicate parent bone for chains that would likely have physics applied.
So the created root bone can act as a controller to just the physics system rather than every single child bone connected to the original parent.
whats the max stuff allowed for Good rating avis? trying to atlas all my textures/materials, but i was told its only allowed up to 4
yeah
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.
so good rating is 8 slots? 😭
Is there any way to preserve transparency when atlasing materials?
i dont recall it being possible. the shader has to be transparent. but some special shader may have the possiblity. to use a mask to mask something to be transparent.
otherwise you just need a seperate material that does all transparent things you want
assuming custom shaders are not an option for uv tile discarding, what's the most performant way to hide/show parts of your avatar on a toggle?
is it better to have multiple objects and toggle them, or one massive object with blendshapes to hide stuff
it's actually pretty easy to add UV tile discard to a shader
you know, if you dabble in HLSL
Blendshapes don't really count very negatively anymore, so one object is often better than multiple, since it's one draw call vs. one per object.
I dont want to use shaders to hide stuff cause people who don't have my avatar shown will see everything enabled
yep
also is it true that its better to have a shape to turn something on than it is to have a shape to turn it off?
technically animations being disabled would also break toggles
I remember hearing that blendshapes set to 0 dont have a performance impact
or at least have a smaller impact than being set to anything not-0
yeah but as long as the default state is to have everything hidden, people won't see things they shouldn't
yeah blendshapes aren't very significant in terms of performance anymore
ahh ok so it doesnt matter either way
hmm what about in cases where you cant atlas the materials, is there much difference between one object with two materials vs two objects with one material each?
that's going to be two draw calls
that's basically the same
ahh ok good to know. thanks!
so its not really worth combining my props at all if I cant also atlas their textures
yep. I really try to aim for one body mesh and one clothing mesh, then rarely-used things can be separate from there.
makes sense!
does anyone have a tool that optimizes triangles in unity
You really need to do that in a 3D modeling program like Blender.
theres stuff like polytool but not sure how well it works
its also a paid assets so you'd need to buy it
alright ty
can someone explain how my avatar is failing security checks?
Which Unity do you have?
2022.3.6f1
ah you should get .22 because there are bugfixes, but that wouldn't block you
ohhhhh
okay
thank you

anyone got a good guide for avatar optimization?
Looking to learn how to design a VRChat avatar with that wonderful green "Good" tag? Wishdream combines their knowledge from both the game industry and personal experience to teach you how to create VRChat avatars with optimization in mind! #furalityumbra #furality
Event Stage Manager: Demmy
Technical Director: Nero Nocturne
Stage Camera Opera...
im trying to help a friend out but im stumped on this one; their avatar has one mesh and a toggle object. Both are using the exact same material and combined UV space/atlased texture. So one material only and it keeps giving this message saying there is two?
[Translate] There are two meshes: the main mesh and the toggle object mesh.
Even if the material is exactly the same, each mesh will have separate slots.
[Original] そこには2つのメッシュがあります:本体のメッシュとトグルオブジェクトのメッシュです。
たとえマテリアルが完璧に同じであったとしても、メッシュごとに別々のスロットが割り当てられます。
Material slots
ah so separate meshes do count. hmmm
Wonder if there is a workaround like have it all the same single mesh but crunch it into the body with a blendshape/bones animation
Sure but its unneeded
Medium rank is perfectly fine
even for Quest version?
yes you're still better than 90% of avatars at medium @waxen whale
The quest version is amazing if its medium
Run it through d4rks optimizer
Probably “AAO: Avatar Optimizer” helps you.
It can freeze unused blend shapes and merge mesh.
Here is documentation: https://vpm.anatawa12.com/avatar-optimizer/en/docs/tutorial/basic-usage/
Basic Usage # Use Automatic Optimization # There are several optimizations which can be performed automatically for Avatars.
Removing Unused BlendShapes(Shape Keys)1 For BlendShapes with non-zero weight, freezing BlendShapes will reduce processing cost. Even if the weight is zero, removing BlendShapes will reduce the size of avatars. Removing un...
dm me if you can make me a avi i will pay
nah
watched the furality talk, but ma_textureatlasser seems to not be working anymore
is there any easy way to create an atlas without blender?
my pc cant handle it
you can't change the UV map without something like Blender, so probably no
amusingly I had Blender crash on me 4 times earlier trying to bake a high-poly object to low. Had to close my browser 🙂
awww
I'm running on my laptop, it's WAY less powerful
i was able to get all the stats down except mat count and polys, trying to upload for android mobile and ios
maybe TexTransTool helps you.
Haha
lol
how does it work? only stuff in the tools menu is debug information
thank you!
does it not have localization for english or something?
thats what my unity language is in
no, weird
could you show me the previous errors? probably it is side-effect errors.
oh whoops, its because i installed it wrong the first time
the guids changed
ill reinstall
accidentally unzipped it into my assets folder :c
wait, VCC is your friend.
Press the button 'Download-VPM' https://ttt.rs64.net/
thank you!!!
love the color of that
ah yes
wtf happened, i alt tabbed out 
😮 < what!??
theres no unity open????
probably leftover processes after the crash
ughh
killed unityhub and Unity.Licensing.Client and its opening now
was worried id have to restart
doing this all over remote desktop and havent tested if it lets me connect on the login screen
uhhh
a texture size of 4096 seems to work?
oh wow
thank you so much!!!!!!
hey again! is there any way to make it apply permanantly, instead of previewing? planning to use that to atlas and then blender to merge everything
or does it apply on build, and i need to copy it out of playmode
it doesnt seem to apply in playmode :(
most things don't, you can copy the component (3 dots at upper right) and paste values back when not in play mode
i mean theres no way to get the atlased texture other than uploading or clicking preview, and preview doesnt save it to a file it seems
ah maybe I'm not following along with whatever you're doing here
let me record real quick
I don't know the tool so probably can't help
aaand my unity froze
:p
this is what it looks like in preview mode
clicking the material doesnt give me a file, but if i double click it goes to the asset
i dont know where its stored
lemme look in the code to see what it does
ah, maybe after i upload itll go here?
omg i had ndmf apply during playmode off
because i was debugging stuff
were so back
oh its midnight
lmao
got it out of playmode !
ughhh just joined everything in blender and it looks like my pc died
its frozen
cant connect to it anymore either
unresponsive, yayyyyyyyy
damn my unity project is only on that too, cant keep working on it from my laptop
have to wait until tomorow 
sorry for late response. Why do you want the texture after atlasing? Normally, the UVs after atlasing are different from the original, so there is no reason to do that.
im trying to join all the meshes of clothes and body in blender, and lower the material count there
it still uses seperate material slots even after atlasing
trying to get mat slots down
'AAO: Avatar Optimizer' can merge meshes and merge same materials non-destructively.
then stop using multiple materials and meshes
when you atlas it you then need to delete the materials and keep one
If you want to merge material only, check the toggle "MaterialMerge" and "ForceSetTexture" in TTT Atlas Texture component.
First error on the left says you have a missing script, you'll need to deal with that. Either remove it, or install whatever package it requires.
if this is a first time upload and you have a blueprint in the pipeline manager component, clear it - otherwise there are probably more errors above that one
ok so with that cleared, you only have one error message?
there is two
ok the second is a side-effect of the first. The first isn't very helpful.
it says this when i click on it, sorry it would be diffult to get a photo. BuilderException: Failed to build the Avatar, check logs for more details
VRC.SDK3A.Editor.VRCSdkControlPanelAvatarBuilder.Build (UnityEngine.GameObject target, System.Boolean testAvatar) (at ./Packages/com.vrchat.avatars/Editor/VRCSDK/SDK3A/VRCSdkControlPanelAvatarBuilder.cs:2258)
VRC.SDK3A.Editor.VRCSdkControlPanelAvatarBuilder.Build (UnityEngine.GameObject target) (at ./Packages/com.vrchat.avatars/Editor/VRCSDK/SDK3A/VRCSdkControlPanelAvatarBuilder.cs:2448)
VRC.SDK3A.Editor.VRCSdkControlPanelAvatarBuilder.BuildAndUpload (UnityEngine.GameObject target, VRC.SDKBase.Editor.Api.VRCAvatar avatar, System.String thumbnailPath, System.Threading.CancellationToken cancellationToken) (at ./Packages/com.vrchat.avatars/Editor/VRCSDK/SDK3A/VRCSdkControlPanelAvatarBuilder.cs:2463)
VRC.SDK3A.Editor.VRCSdkControlPanelAvatarBuilder+<>c__DisplayClass104_0.<CreateBuildGUI>b__4 () (at ./Packages/com.vrchat.avatars/Editor/VRCSDK/SDK3A/VRCSdkControlPanelAvatarBuilder.cs:2015)
System.Runtime.CompilerServices.AsyncMethodBuilderCore+<>c.<ThrowAsync>b__7_0 (System.Object state) (at <27124aa0e30a41659b903b822b959bc7>:0)
UnityEngine.UnitySynchronizationContext+WorkRequest.Invoke () (at <cb81df0c49c643b1a04d9fc6ccca2433>:0)
UnityEngine.UnitySynchronizationContext.Exec () (at <cb81df0c49c643b1a04d9fc6ccca2433>:0)
UnityEngine.UnitySynchronizationContext.ExecuteTasks () (at <cb81df0c49c643b1a04d9fc6ccca2433>:0)
triple back-quotes: ``` make for nice formatting! But that's not a very useful message unfortunately
how do i make it useful so you can help me? sorry if that sounds mean or soemthing
no idea!
I would just close unity, flip SDK version on VCC and open unity again. unless editor tool got outdated to start with
definitely restart unity if you haven't - I hate that this fixes many things
how do you flip that, i have never done that sorry
Very stupid question, sorry. how do you restart unity is it going in and out or something different
it's just a windows application, close it and re-open.
it says the same thing
Blender question, normally I just decimate a high body mesh and then ignore the small little texture imperfections it causes. But today I've been trying to do the method of transferring a high polly mesh texture onto a low polly mesh texture to fix the texture issue, tho sadly most of the tutorials I can find on youtube just tell me to use a cage method? which isn't what I'm trying to do exactly, and even when trying it and following the vid step by step it just doesn't work at all and I end up with a weird texture that's all fucked up. Any one have a vid or a post that can hopefully walk me threw how to do what I'm looking for?
Same steps, but don't choose to make the cage. Shrink the mesh with the texture (Alt+S or sculpt) slightly under the mesh receiving the texture
so just make the low polly a bit smaller than the high polly mesh and then follow the same baking steps?
or Vis versa
Tbh, I havent done it in a while but I think its the low poly that should be under the high poly.
its by a very small amount, though
I'll give er a go ig, I've been at this for a bit so anything is worth a try rn lol
Feel free to DM if you need more help
I just tried it really quick and it's the low polly mesh over top the high polly
works great none the less
ok, glad it worked!
I kinda feel dumb seeing how easy it was all along but hey, I'm learning at least lol
thanks for the help g
now I just need to fix the uv map cause it's of the shit lol
like... this be looking bit to pixel like
pc atm. I just can't stand using an avi over 150mb
I already got it just under a hundred in unity while keeping it looking the same. But I'm taking it into blender to make it better cause 100 is still a little to high for me
are there any guides to avatar optimization within unity
wait, within unity? there's not a whole lot you can do there, perhaps d4rk's optimizer thingy is about it
jammin with very poor
hell yeah
the base is just a unitypackage
i can probably export and reimport it but frankly im fine with very poor
remember that your computer has to render your own avatar 2-3 times
mirror, shadow, local
^
ah ok
mirror is yknow the mirror duplicate
shadow handles mostly the lighting
local is what you see in first person
The point I'm making is that your own avatar can negatively affect your performance
i have a beefy pc im mostly worried about others
(no pc is a match for vrchat tho 😉 )
if it's bad enough anyone smart will just block it anyway 🙂
in-game
or if you mean imposter
on website
more of a question: what are the biggest things to look out for which impact performance the most?
Material Slots are the one of the biggest things to reduce
Triangles is fine if you're at like 140k (the triangle stat hasn't been changed since 2018, even though the pc hardware has changed drastically). The sheer amount of drawcalls this game has in single scenes is the reason why the game is extremely CPU heavy
I do but I don't want your avatar to use all of it 🙂
Vram abuse is kinda hard to do with the limits that exist. and even then Lower material slots = lower possible max Vram
When the 8k texture avi loads in :B
http://i.lilyy.gay/u/HSG6Kr.png finally got my optimized verision of my avi into play mode, and i'm almost done!!!
all i need to do is crunch polys
nevermind, i dont think im gonna be able to take down bones :c http://i.lilyy.gay/u/UYp8IT.png
and polytool on 20000 looks horrible :c
might have to make a separate avi then with all the fun items removed then, cause man the revolver I downloaded has so many separate materials on its own :(
If you have multiple outfits make separate avis for them.
Same with any objects that demand lots of resources
That's basically what I do, have a fun version and the optimized version for events / large instances
I just wish I could find a way to reduce the triangles on my avi for quest. damn kita avali alone is nearly 70,000 :(
it will never be allowed automatically for questies
looks too bad when using the tuxedo optimizer to get to 20,000 since so much detail is needed on some parts
I thought there was a quest version of that
yeah, there is, I've got the package in my downloads
Suspicious arrow gizmos.

for people that enjoy "content" on a 56k dial-up modem :p
Even if its only one particle that needs collision?
Its gonna be weird if a railgun-sabot hits something and doesn't eject sparks.
barely used particles but i just use peoples contacts/ect to trigger particles when hitting stuff 
...I would also kinda like a sound for its impact >_>
Since its really fast, lots of kinetic energy...something akin to thunder? Like being struck by lightning.
Is there a tool that lets me see the size breakdown of the avatar asset bundle? I'm trying to figure out what exactly is using so much space in my avatar
VRWorldToolkit is one
It’s a curated package in the creator companion
Does that work for avatars?
Just click VRWorldToolkit at the top of Unity and world debugger then click the build report tab
The build report will work on any project regardless if it’s a world or avatar project
Awesome, I'll give it a try
IT WORKS! Thanks so much
I just need to know how to make an avatar quest compatile
VRChat now allows you to upload iOS content! Fax explains how.
Read our docs to learn more: https://creators.vrchat.com
if you're patient enough you could do a full retopo and transfer everything over (weights, uv, shapekeys etc)
Blender atlas textures
optimizaaation~
Material Combiner Addon:
https://github.com/Grim-es/material-combiner-addon
00:00 - Hello
00:20 - Installing the Addon
01:09 - Separating Transparent from Opaque
01:44 - MAKE A BACKUP
02:14 - Common Issue
05:03 - Works now :+1:
so i need blender for this
yes
the fbx file for the Avatar is what you would be importing into blender
but
it is a package
my project folder would have it though
how do u do it usually
?
the asset folder of the unity project would have the fbx file somewhere in it
"/asset/name of the Avatar maker/Avatar name/meshes" tends to be a pretty typical file structure for where the fbx file is hiding
that also works
stay with me, im installin blender now
i remember it to be extreme unintuitive
it's just a gray model
r u sure?
you have to click on this button to show the color and texture
I see
what'
what's pi llow?
i think blender forces me to install it to use matcombiner
yes that's a requirement to go install that
technically making a atlas textures can be used without that add-on but it is simpler with it
the addon wont show up anymore
in the tool bar
and installing it doesnt work either
.
have you tried resetting blender to make sure the python script you're installing is properly loaded
and in like 3 minutes I need to head off to take care of some errands IRL
https://www.youtube.com/watch?v=73REcZVWMhA a video that explains how to do the texture baking stuff without the add-on
A simple tutorial on Texture Atlasing/Texture Baking using Blender 2.8+.
Links in Video:
Pumkins Tools: https://github.com/rurre/PumkinsAvatarTools/releases/tag/0.9.5b
=TIME STAMPS=
0:00 - Intro
0:08 - Disclaimer
0:30 - Combine Your Meshes
0:42 - Removing Leftover UVMaps
1:04 - Removing Unused Materials
1:17 - Creating Baking UVMap
1:40 - ...
i combined it, but how do i get this now into unity, do i import an fbx file or just the png:>?
the new fbx and the pngs
that's because you accidentally exported the Sun from blender with it
into the materials?
the blender export has a select only selected object export option if you're not wanting to include the Sun
Armature mesh @heady smelt
yeah you would handle the rest of the unity set up stuff from there and I have to hop off
learning how to optimize avatars and get started with all of this has been an adventure lol
probably you can not upload lol, because your meshe's Read/Write is desabled. and Auto Fix button solves that.(when Read/Write desabled, Control Panel shows "Triangles: 2147483647")
aaaand, you have to reduce your physbone components if you really want to optimize your avatar
how does this even happen
what are all those trigs even for bruh
read/write not being on makes the size look bigger then it actually is
its not actually that large number in most cases
I have discovered decal based blushes, -1 material slot!
excellent!
Can someone explain to me why in Unity a avatar has a different Poly count then final in Vrchat
are you using any kind of non destructive tools like vrcfury or MA?
ye
then those tools must be processing your meshes prior to the upload.
So if i would attach them manually it should be right?
i don't think you should though. why would you?
is it pushing you over some sort of limit or is it just OCD?
cuz I wouldn't give up modularity personally.
i wanna get to poor
it shows in unity 69956 polys and in vrchat 75000
so its screwing me up
that's a very big discrepancy. i thought it would be on the magnitude of like up to 1k or something.
i'm not sure at that point it could very well even be Unity being wrong, or the VRChat server side scanning misrepresenting. people have posted to canny, and they've been asking for avatar IDs to get the wrong perf ratings sorted out.
so what should i do in this situation?
you could post to the VRCF Discord (if it's VRCFury) or contact MA (idk how they do that)
worst case scenario you both figure out it's not VRCFury/MA's fault, and then you'll probably know what's next.
hm. I know VRCF doesn't always give out support if people are using MA unless someone is like 100% certain it's VRCF causing an issue.
still worth a shot though. i do however think it's either Unity or VRC being wrong, or the processing messing you up.
alr thanks i will give it a shot, worst case going back do decimate :/
yeah! one last thing that you could try, make sure you have read/write enabled on your meshes. whenever i didn't do that, i had a range of things happening from vrchat not showing poly counts to being wayyy off on them.
you could also try out one editor tool i use.
if you have the anatawa12 repo, there's the gists package. and you can enable "Actual avatar performance" and that will try to use the same logic and maths to predict what the performance will be. i use it to quickly iterate when optimizing, and it was very helpful when vrchat was still sorting out issues with the wrong perf ratings showing up as i was able to see them in the editor somewhat accurately.
you would probably just wanna run the avatar in play mode after enabling that gist so that it can run a build and tell you what perf it thinks it should be
Sorry to ask again but what do you mean with enabling gist
it's part of the anatawa gists thing.
are you using the vrchat creator companion (Alternatively ALCOM) to manage your projects? this is how most of the tools and packages for making avatars and worlds are obtained. through vcc repos
yeah im unsing vcc but also i have other tools manually inside
you can install the repo i linked above if you wanna give the thing i recommended a shot. i just dont know if you've ever dealt with installing stuff through the vcc so idk how much context u need.
but basically after you install that repo, and the "anatawa12's gists pack" package from it - it should add a thing to the top menu of Unity that will let you pick any of those little scripts (called gists) and one of them will be the actual avatar performance thing. you don't need it but it is useful to just iterate when optimizing, at least in my opinion
so unity was wrong after all! also sorry to hear that, it's frustrating.
yeah, its really stressing
you finally see your under the 70k poly count and then vrchat "nu uh"
i just decimated my mesh to hell to get from 21k to 20k to get poor on quest
i could stay vp as it introduced some minor glitches, but it's nice to have questies not have to whitelist me. as i'm otherwise optimized and if i have to tell them to trust me it won't lag them, they won't lol
oh yeah then thats hell. my avi has an official quest ver but i was stubborn to have the hoodie on quest. i'm going to try and do some backfacing voodoo to maybe lower the poly count without decimation as i made my quest version have non toggleable clothing already. i'll probably ""mold it to the body"". i've even figured out how to make the quest version enforce some params so that the pc side is synced to the state my quest ver will be stuck on.
The 'bounds' of the renderer object
How big the avatar could be, including blendshapes
Nope in literal meters
Is that intended..?
Lol.., ok so you are looking for 'bounds' not scale
On one part of your avatar
Likely a skinned mesh renderer
Put t:SkinnedMeshRenderer in the hierarchy search box and go through each one
In the view you should see a white box around parts of the avatar for each one
Find the one thats massively outside where it should be
Although scale 100 tends to be due to blender export mistakes
it is on
Can't tell because you keep cutting out random parts of the ui
i used that search
t:SkinnedMeshRenderer
u mean these white boxes?
should i move this to #1138520828556890214 ?
how do i fix this>?
i knlw now what it is. I thihnnk it is to big bc my avatar is 180m tall in game
the command doesnt work anymore
ok so, is there a way to make a texture on my avatar invisible, or just see-through, only for myself?
like, if people look at the avatar it's opaque and normal, but in 1st person parts of the texture should become see-through
if i look directly down, the clothes on my avatar cover my screen
use a different material for local, switch them with the IsLocal animator parameter (true = only you)
and how would one go about doing that? i haven't played VRC or messed with unity since january i'm just coming back today lol
there are a lot of things i forgot
probably watch tutorials on making toggles and ignore the part about the in-game menus
is there a tutorial i missed? i'm asking on the discord server because i already looked through google and reddit and didn't find what i was looking for
I mean, there are lots, such as https://www.youtube.com/watch?v=XqtSg6_W07Y
Did this video help you? Consider sending me a tip on Ko-fi! https://ko-fi.com/sippbox
Welcome to my updated tutorial on creating toggles for your 3.0 avatar! This video goes over using bools to toggle a prop in your hand, and using ints to swap through accessories! Hopefully this helps you make your avatar more customizable!
0:00 - Intro
0:15...
that one isn't what i'm looking for unfortunately
it literally tells you how to do the animator part, in your case you just use the variable IsLocal which is a built-in one documented on VRChat's docs page
I'm not sure where you're stuck then
my avatar has a giant cloak that can be toggled on and off, but when it's on i can't see anything if i look down, i don't want to toggle anything, i just want it to be transparent for myself and nobody else
i don't have issues with creating toggle animations and props i've done that before, i'm stuck on the texture part
Simply erase the parts you don't want
i'm confused
me too. make a new texture with those parts erased, use it in a second material that only gets applied for you.
i'm trying
Ok, where are you stuck?
i duplicated the texture but idk how to make the 2nd one transparent
image editor, erase the areas you don't want. Assuming you have an alpha channel.
it should be pointed out that this won't work on quest
now only thing left is to make sure only i see it being transparent and not everybody else in the server, that's the only part i'm stuck in now
is there something similar with how the head becomes invisible in 1st person but not on mirrors?
that's fine, i'm not on quest, and the avatar is desktop only
ok so the mesh has the renderer but not the material itself
yeah i'm lost
https://github.com/d4rkc0d3r/d4rkAvatarOptimizer you could try this but I'm not sure how well it works on Quest
ive already one project open
I bought a avatar off of booth and looked up how to insert it into unity. I also fixed all the main red octagons so I can continue to build & publish, but it stopped me at the build and publish and says "building avatar" but no progress has been made after I waited a hour or two. I don't even know how long it would take to publish a avatar
i even tried detaching the blueprint (optional) that i saw in a youtube video and it still didn't work
the avatar for some reason has three different Avatar descriptors which is not supposed to happen try deleting all but one of those and then do the disconnect build ID
my point was to try installing this add-on and see if it helps with your problem or not without having to install blender
you can install Unity add-ons when a project is open no problem
how did u find rthis one?
on the same page I linked you previously
I deleted two of the "vrc avatar descriptor" and then pressed "build & publish." It had then popped up it's own blueprint ID after I had detached it.
you need to exit out of the prefab View
wheres the prefab menu?
i exited out pressing the scenes button and it ended up in this
that's because you don't have a copy of the Avatar in the scene itself drag the prefab into the hierarchy
i dont know how to drag it to the hierarchy either 😦
alright i did that
then you should be able to just click build and publish
glad to be of help I would recommend on the VRchat website also generating an imposter for the avatar so that people that don't show very poor avatars can still see something that looks like you
ok
because your screenshot shows it's going to be a very poor Avatar so nobody on Quest will see it by default
it didnt fix the mesh problem
i have too many meshes
it does the stuff typically on upload there is a button to generate a duplicate that's optimized
did it make any difference to the other stats
so that's at least progress
Is there any way to get the impostors that are generated and viewing them in unity?
nope you can only view the imposters in game
hello! i'm trying to make an avatar with a single skinned mesh (Quest optimization) that can take tools from their belt and carry them in their hands. is there a way i could toggle to move that tool's bone between the belt and hand locations and have them be rigged in the same way that they would if they were parented to bones in those two locations? the VRC Parent Constraint doesn't appear to be doing anything, so if i need to be using that, i'll post my component settings. thanks for any insight
As far as im aware you cant do that with bones
Youll probably need to duplicate the flashlight mesh and attach the duplicate to the hand, thats all I can think of
You can use the constraint for something like this. It might've just been the setup of the component that was causing it to not work. Personally I set empty gameobjects as the source positions and animate the weight of said sources to move it from A to B or vice versa
I would use atlas, but I dont know where is the atlas texture, after I press:
[Save Atlas to..]
Thats how it looks after I hit "Save Atlas to.." There does no folder open and there is also no new texture in the list.
So I combined everything but there is now atlasa created I guess. IDK why peoples even use this atlas tool if it only can combine the verticies but not giving you an option to even get the created image.
You should only ever have one Skinned Mesh Renderer on your avatar. Any accessories or additions to your avatar should be done in 3D editing software like Blender, and merged into the original mesh. Any animations or movement should be handled via shape keys or bones
How do i merge it into the orignal mesh? and will it still be toggleable?
Ctrl + j. And yesn. You will no longer have access to the object activity toggle when merging, hence why you need to make "hide/shrink" blendshapes and use those as "toggles".
How do I fix this
i love you
Saw a few too many poor avatars with lights this weekend, I'm really surprised there weren't already multiple canny's for this
https://feedback.vrchat.com/feature-requests/p/avatar-ranking-lower-avatar-light-limit-to-0
eh, one can be useful
What is better for VRChat?
4x 2048 materials or 1x 4096 material?
8192 materials?
1 material with 4k texture
neither is very bad for a pc build (21 ~ 10mb vram depending if you need transperancy) handy you need different shaders you can still use 1 texture on several mats
from this perspective, everything is bad if you want to make a good looking avatar.
But what would be less worse for the performance?
4x 2048x2048 or 1x 4096x4096
4 medium large materials or 1 very large materials?
I have to choose one of those options.
If all texture are used simutenously then 1 atlas texture is better. But if some textures are being used at time, smaller separate textures are better because it the one not being used doesn't get loaded into VRAM.
1 atlas is the whole avatar body.
Sadly, I am only allowed to use up to 2 materials on quest whats makes the choose smaller and those automatic generated Atlas does waste a lot of unused space on the image, but atlasing it from scratch by your hand, only with Paint.net and Blender does take a lot of freetime I sadly dont have left.
and yes, I have everything already selected from the avatar
Use plugin UVPacker Master and Simplebake for blender. They're paid plugin but totally worth for every penny.
I love SimpleBake. And it's about time I buy packmaster
Do I need both? Or is one enough?
you can do this without either
Just one or both depends on how convenience you want.
But both is really god sends.
I've also been using ZenUV for a while
It should be quick and easy. You can see how much space I waste on the Material Combiner Master, which was recommended by Cats Blender Plugin.
.
It would be great if the tool can only crop out those pixels, where a polygon is on top with maybe 2 pixels left on the edges to make sure everything in the polygons is filled up.
Well no. Packing efficiently is heuristic problem.
It requires more advance algorithm to make it efficient.
Just crop out everything that have verticies or polygon edges on top of it and every pixel that is not in use, you can overwrite it.
Just imagine the yellow polygons left would cut out the pixels underneath it and arange it with only 3 pixels space to each other.
I even would pay for such a smart addon, so I can use lower resolution images without getting a low resolution texture on the avatar.
So it would only cut out the pixels that are in use and maybe left 1-2 pixel on the edges.
And the black area is free to put another cutout image on it...
It's easy for human brain to figure out. The main problem is telling the computer what to do.
Can the computer not detect what are pixels that are not in use in any material and what pixel are in use?
If I paint for example on a model, it will draw only on the UV shape and never on the areas where those polygons are not.
it also have to know somehow where it is because every pixel that is inside or even touches the orange polygon, will be affected on the look of the object.
Yes it can detect pixel. With caveat it has to be done one pixel against one pixel at time. So that would be billions of comparison.
in short say:
Every pixel than can be affected by brushing with the paint tool on the model. and every pixel that doesen't get affected even if it gets painted on every little spot of the 3d object, is a free to overwrite area...
Even you have to can detect pixel is occupied, you still need to check for every pixel of an uv island.
And has to restart the process if one pixel is occupied by other island.
something like this, but automatic and filtering everything that is Pink.
and if your textures are already pink, than select another greenscreen color to shapeout.
Thats what I would imagine.
With caveat it has to be done one pixel against one pixel at time.
That's a BigO problem where calculation count has to grow along with data size. Here is a sample: take one island with 100x100px size, which is 10,000 pixel total, against 1000x1000 texture which is 1m pixels in total. So that's already 10 billions check, just for one pass.
Not to mention an island could be scaled or rotate to fit better with other occupied pixels, so complexity glow really fast.
how long would that take?
I mean this is nothing what must be done in realtime, imagine doing this with a 4090, I mean it sounds a lot but GPUs are true beasts in rendering millions of pixels every frame.
What would you think, how long would this take?
Just to imagine 🤔
Not sure. UVPackMaster is already doing that by using GPU and it take less than a second to pack all islands into uvmap per round. But the code has to be efficient enough to run fast.
Still has to run multiple rounds to find optimal uv space usage.
Can you explain me please the difference between UVPacker Master VS Simplebake?
UVPacker Master is for packing uvmap. Simplebake is for baking texture.
So I need both to replace material combiner, right?
To completely replace material combiner.
Ok thanks, I give it a try!"
Just so you know you don't need either technically. You can bake without simple bake it's just a more involved process. Blender 3.6+ have greatly improved UV packing engines (not as good as uv pack master but good enough for most uses.
Figure someone should mention this before you go and spend something like $60 on blender addons
What is the most realistic skirt you can make with physbones?
To come as close as possible to cloth physics...
It should be ranked as medium, this here is just a bew bones over medium and is ranked with "poor".
Don't try to achieve realism cuz not even with cloth simulation you'll be close
Just have enough bones to avoid clipping as much as you can, such dense chains will just make your skirt move chaotically
Is there a way, or some tool, that can let me see the sizes of all the parts of an avatar as I am attempting to upload? I'm getting really weird/inconsistent upload sizes when trying to produce a quest avatar, and I don't know where I'm losing nearly five megs of size when I've done all the optimization I can.
BuildSizeViewer
vrworld toolkit also works for this
oh hello again!
you need better UVs then. you can get away with a much much smaller texture size with the same level of detail by having well mapped UVs.
yeah there's a tremendous amount of wasted space in the screenshots
For a female base (making one) how many polygons should it have mine has 27k if I subdivide (2) and 108k if I subdivide (3)
is there a 3rd party tool i can use to determine what is causing such a big download size
thry's avatar performance tool iirc
alr let me try it thanks
28K should be plenty. Avoid going over 70k
My avatar has a little over 60k triangles. But i am a sucker for high resolution and smooth deformations so im really pushing it with that amount. Anything above 70k is just pure insanity (for a base, not counting clothing here)
what is the polycount threshold for VP on PC?
Vp?
this is listed on the vrchat docs site: https://creators.vrchat.com/avatars/avatar-performance-ranking-system#pc-limits
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.
oh i didn't know about the tables. thanks
what counts as a “bone” to the performance ranking system? Do leaf bones count as bones? Does it just count the total number of objects under the armature or does it only count vertex groups?
ooh you mean does it count unweighted bones? Hmmmm
The third one, number of gameobjects
k, makes sense
Is there any way to delete animation frames like this automatically? I would rather not delete frames manually like this for 600+ frames
Ctrl+Del is not a solution for you? This command removes all key frames
I want to keep every 3 frames
basically, I want to reduce the frame rate to reduce file size
Since the asset is an animationclip, I can't go to the Animation tab and reduce the frame rate like I would with an FBX animation
Debug Inspector > Sample rate does not reduce the Avatar upload size
@ocean hollow You can try this https://github.com/txtxj/Unity-Animation-Compression-Keyframe-Reducer
you can copy the stuff from the assets folder to your vrchat project's assets folder, then it should work
wow I hate that, thanks for the info
I need some tips at Optimizing... (android Ver.)
(all of them are quest versions)
Since you are using VRCFury, have you tried adding the blendshape optimizer to the avatar?
Otherwise, just change the texture resolution for the textures for specifically the android platform.
I already tried the blendshape optimizer, also "D4rkAvatarOptimizer"
Is this hard to do?
I found this in the SyncDance’s store page.
Syncdances is now 50% compatible with quest (we still have the Avatar size limit issue)
No, super easy, you just find the textures for the avatar and in the inspector (under the android tab) change the max resolution
No audio on Quest, but rest would work
Oh i see. then nvm
Probably is a prefab for Quest specifically with the songs stripped, but the animations to dance to them still there.
Animations can take up quite a bit of space but still
worked! Tysm!
Can we discuss UV layouts for a sec?
I've been battling this in my head. I don't need help about how to do X, I'd like to just discuss the pros an cons of messy vs "sensible" layouts. Many people use image editors such as gimp, for which a layout as shown in the picture might be "making more sense". However, I waste a shit ton of pixel space like this. On the other side, my avatar is so detailed already, that there is no way in hell I would get it to "excellent" on pc. "Good" is the best i can do and it's tight on polygons already. My material count is and will stay 3.
So should I really worry about texel density too much or am I beating a dead horse? I am considering making two uv maps, one with whats shown and one with an algorithm compressing the islands to maximize space but then texture artists have to keep asking which layout a client uses and most wont pay attention to there being a second one, so this option seems to do nothing but add dumb steps and confusion.
To sum it up: What would you do and why?
I'd probably do it like you have it, there's some balance between efficiency for the graphics engine (the computer) and efficiency for the graphic designer (the artist).
I really want to keep this layout as well (just gotta touch up symmetry here and there bla bla, perfectionist ahoi) but I feel like I'm wasting way too much space like this x.x It feels unethical xD
first draft looks something like that just to make the base texture yeah, but for the bake and game ready version everything is sorted by color and seemingly randomly packed. computer doesnt mind
i still don't get why some people draw 3D surfaces in 2D image editors, it's very unintuitive, and even more if you don't have a preview of the model
i puzzle the islands in a way that it's kept in order without having to sacrifice a lot of texels (using always my rule of minimum a 4 pixel margin)
So like if there's a gap between two islands doing an outwards curve and another one doing it inwards like with the legs and torso islands you have on the left, i'd just move the torsoabove the right leg islandand the left arm right next to the right one
prioritizing the order and symmetry of uv islands over texel efficiency will cause people to use very high resolution maps because many of them just don't really like noticing texel interpolation on their avatar
the default 3D painting Tools in blender kind of suck as they don't have any layers so it's either pay for a substance painter or paint 2D for most folks
There are layer add-ons (LayerPainter, ucuPaint) but they still kinda suck compared to a real 3D painting tool
yee tho armorpaint is free
it may have a weird layer system but it has a proper brush projection and scaling, and obvs lazy mouse, which is enough
oh yeah, I still have to try that for real
You could always make two versions? One that recommends substance painter (or any other 3d painting software) and another that is 2D painting friendly. That's if you're selling, if you're just making it for yourself, make it however you wish.
hey i'm trying to export my avatar but it says it's too short, but if i make it bigger, it gives me a different error?
is each square on the grid 10cm?
1 unit = 1 meter, but you'll need to map the shoulder bones
there are various display options at the top if you like the grid
but your problem is not the height - it's the second error.
the avatar feet?
The avatar origin should be at the world origin, 0,0,0
If it's not, go back into Blender and make it so
(unless for some reason it's mis-located in Unity?)
in Unity, move it to 0,0,0
yeah its there
yeah i tried making it bigger but it changed it to very poor
in that case you made it too big then
how tall are they supposed to be @rocky nexus
Ah and you can see it's not standing on the origin in Blender either.
whats the reccomended size for the avatar?
the average male irl is 1.77 m tall
so how tall is the bunny relative to the average man
if you weren't treating the blender unit as arbitrary
well i'd assume he's about 5'11
alrighty like this?
yep - make sure you apply transforms to the objects
if you didn't unpack the avatar prefab in Unity, you can just overwrite the .fbx file (with the same export settings) and it'll just update
is there a way to make the eyes move the texture instead of rotating it?
cuz they're stuck looking up for some reason
click that green "return" button
did that
they're stuck looking up no matter what i input
and i tried both eyetarget and eye control
probably bad bone setup - eye bones should be perfectly vertical with 0 roll
shit
i wouldn't mind not having eye movement, so how do i make him look straight ahead?
you mean without going back into blender and fixing it?
(note that I'm guessing, I haven't seen your armature)
i had this model commissioned i have no idea how this thing works
well you can just remove the eye bones from those slots
expand the window, should be a "auto fix" button there
you need shoulder bones, even if they do nothing
i think it looks fine, though you could make most things a little bigger, don't need a huge amount of white space between islands.
tho if you were planning to have everything perfectly symmetrical, you could save a lot of space by overlaying all symmetrical parts onto eachother. if you're planning on selling this it might not be a good idea though, since other people may want something asymmetrical in the texture
I think it's probably best to just use 1 uv map, you really don't need to be using every single pixel of space available
Yea i think i settled for the layout, however i will maximize usage as much as i can and make everything perfectly symmetrical here without overlaying
this feels a lot less wasteful
@stoic gust You don't need to yell. Chill with the all-caps.
damn i really fell asleep slapping someone with a "do you speak english?"
how can i fix this i feel like this is out of place
yeah the legs ought to be straighter. Go into armature edit mode and move the feet back a bit
im new to blender so its kinda bad but let me find armature edit mdoe rq
i was able to find it got no idea how to move it 😞
make sure at the upper-left it says "object mode" - otherwise hit tab, it probably will. Then click the armature and tab to go into edit mode.
I strongly recommend tutorial videos
alright il watch a tut video im watching a tut on how to make teh avatar and i need to move every bone since they are alll out of place
@cold yarrow something like that right?
shhoot mb
i forgot how to fix this
turn on read/write on the model file in the first tab of its inspector
thank you
does anyone know how to apply decimate without removing the blendshapes?
you need a plugin for that, I use this one. It "usually" works: https://github.com/przemir/ApplyModifierForObjectWithShapeKeys
Decimating like that is likely to mess up your shapekeys anyway though
all that just for me is just duplicate the model 3 times, and they still lose the blendshapes
i think it just doesn't work with decimate
yeah it doesn't work in all cases unfortunately
usually anything that changes vertex count is tricky
I mean, the method this plugin uses, not the plugin itself
Blender 4.0 required. No plugins needed! Select vertices in edit mode, mesh > clean up > decimate
Ive used this on multiple models and it works fine if that plugin doesnt do its job
tysm!
finally. good performance on quest
best i've gotten before this was poor somehow
https://www.youtube.com/watch?v=3efrO8dauec a very nice new tutorial video on RGBA Masking
RGBA masking in Poiyomi shaders lets you blend material properties together using RGBA channels, coming from either a texture you create, or vertex colors, effectively giving you four additional PBR material slots.
Presets for Substance Painter: https://www.poiyomi.com/general/substance-painter
Get free shader: https://poiyomi.com
Get Pro sha...
Help? I've tried everything to fix the quest side and it says security checks failed
here are my errors:
I'm very confused usually I can fix this but apparently not
why do you have over double the recommended max bones
i have no clue, and it wont go down
how do i reduce that??
ive never had an issue with it before ive had it hit like 400 no issue
thats the only way to properly do it yes
it could also be you've got multiple armatures from assets added poorly in Unity
figured out the issue is a couple of my meshes? idk why it’s giving me problems
but i’m just gonna redo them
download/uncompressed size wont go down to upload for quest. No matter what i do, it just wont go down even if i get rid of everything except the avatar in the scene. I've even decreased the polygon count and that did nothing, same with textures, that did nothing. please help.
it's stuck at 27.02 download and 105.91 uncompressed
nevermind
im just not smart
i never checked the box😅 😭
sometimes this can happen from a broken script btw
i had this happen to me the other day, couldn't figure it out for the life of me, it was because i had a broken script in the project
just had to delete that and then reopen my project and it worked fine
yeahh i thought it was at first but it’s one of the meshes bugging it which makes no sense, i have avatars that are optimized worse and they work fine..
for the quest version of this avatar i am creating, should i only have one physbone thingy for the tail? (bones coloured in green are going to be physbones)
No one physbone is very little
You only have 16 physbones that's perfectly fine for quest
ok its just that the quest thing said its very bad for optimization
(i dont own a quest, i dont know how much it affects performance)
You may be thinking about physbone components
You can have 8 components max
Physbone transforms are th bones
yes thats what im referring to
Those are seperate
the components
Yeah not the same thing
Physbone components you already only have one on the tail
Physbone components are what you put at the base
Then it affects all the bones after it
The children
The transforms are the total bones affected by this
You can have 64 on these on quest
Tail = 1 physbone component
Tail bones = 5 physbone transforms
thats right, yeah
thanks
wasnt sure what the correct terminology for it was
no idea why any of my bones/collisions wont go down even if i fully remove them
There are several physbone colliders present in this image
Its the green spheres. So you didnt remove them.
i did it
is it a bad idea to use gpu instancing on poi shaders?
Depends if the object is both not a skinned mesh and appears multiple times from a view
it probably doesn't make a ton of sense on an avatar unless you're doing weird things
what kind of wierd things?
mesh particles or duplicated props, something where it makes sense to instance
I have not actually quantified anything about performance, I'm speculating from what I know about how it works, which probably isn't much
To my knowledge it does add some small cost to the material so best not use it unless you are actually using it.
And rare that it would have a use on an avatar.
I'm trying to select Body , Eyes , Face to save as an atlas because my avatar has too many material slots- But when I do that, the Face and Body both go white, but the Eye texture remains. How do I fix it to all the materials looking the same- but in one material?
edit : When I atlas them- the textures dont even like- merge like they normally would when doing so- it just only shows the eyes.
what was it cause im having the same issue
so I just reuploaded a very old avatar that failed security checks due to texture memory usage
is there a way to make vrchat recheck now that the issues fixed?
enter play mode and leave
in the unity editor?
oh wait after uploading hmm
shake vrchat until it updates that you updated your avatar
fixed it
I forced vrc to load into it through the website
and that updated it on the app
pretty sure you just need to attempt a upload again to get the updated size in the error (though if its within the limits it'll get rid of the error and just upload the model)
0
Ive never used that tool but you'll need to manually atlas the textures and UVs. There are tutorials for this
in a skinned mesh when you add a shape key does it add like a bone or something?
lower the resolution on your textures
i already changed all the texture's max size to 512, is that not enough?
or do i need to change the actual image file's resolution
would you happen to have lots of blend shapes as those can affect file size?
probably yeah p: but whenever i reduce the shapes on clothes etc they would easily clip through because the body is still high on shapes and changing the base shapes kinda messes with the base i think
Does anyone have a link to the new limits?
fewer physbones or physbone components, fewer colliders
what do all the RED errors say?
no, a shape key only moves the vertices around
Is it viable to use a particle system to create hair for an avatar? Or is it more optimal/plausible to create hair via meshes and armature?
why would you ever use particles to make hair
I don't know, that's why I'm asking.
wat
You could try poiyomis particle shader it's not making mesh but you could make it look like it is but it would be heavy on performance tho particles in vrchat seem to always be
The particle shader adds particles around a mesh like off it's surface, I haven't messed with it much but it should work
I see, the heavy performance is more what I'm worried about. I'll take a look at poiyomis particle shader and see what I can do. Thanks for the pointer! :)
yea of course! also its patron tho so you'd have to buy it
ohh I see, I don't mind paying for quality tho so if it seems like what I want I'll go for it
if you look on the poi patron you should see a clip of it on there
Anything about new quest compatible sizes?
no change it's still a 10 megabytes file size and 40 megabytes uncompressed texture size
you'll need to take it into blender and merge some materials and bones aswell as atlasing some textures
you could also try auto-quest optimizers like VRCQuesttools or Polytool though the results can be poor depending on how well the model was made
Screenshot from yesterday
Screenshot from today
@indigo plover i believe we are both having the same issue, its the same avi with nothing done with it
how do you have a 670MB avatar
it likely got smaller when you re-opened your project because either your SDK wasnt updating the size properly or you didnt attempt another upload but you deff need to remove some things as 500 for an avatar is overkill
if i saw that in game it'd be a insta block for sure
Anyone know some low hanging fruit I can go for?
Hi
Texture sizes, reducing them to 2048 or 1024 is a really easy way to reduce both uncompressed and download size
you can also try to remove the Blendshapes that you aren't using, or just use the d4rk avatar optimizer that does it for you
my avatar had like 400+ blendshapes, but I only used about 20 of them, it increased the download size by about 10MB
Is there a way to tell my UV packer to not to use multiple space for the same texture in Blender?
oh great, that's exactly what I was looking for, thanks
do I need to first unpack everything as normal, combine the repeating parts into the same uv space, then unpack again? I think it should work
what i usually do is shift each of the original UV map by a multiple of 1 in order to make sure they dont overlap, then do pack islands
I keep finding myself annoyed with the results of auto packing tools
Though a bunch of what I've got to do is world stuff nobody's going to actually edit later so I should just get over it
That's a big pain to me 😭
I had 10.02
Like bruh
not sure what channel to put this in, but i recently uploaded an avatar intended for fallback use. it is excellent performance for pc, and good performance for quest. i don't see any option to mark the avatar to be a fallback upon upload. did that change, or will the fallback appear in my fallback avatar list? i don't see the avatar in that list after uploading the avatar.
am i missing something? please ping me with a response.
it has to be uploaded on all platforms and then marked as fallback on the android build menu
i did not see any option to mark the avatar as a fallback on the quest build menu. i am using the latest version of the sdk
have you built it on ios as well? idk if that makes a difference since it's still in beta but i usually build my avatars on ios and they work as fallbacks
oh wow. didn't know that was a requirement. I'll try that then
im not sure it's a requirement or not tbh
I'll see if it makes a difference
ive also recently had an issue where i upload an avatar on quest and it's just doesn't work even though it says it successfully built 🙃 so maybe check out the avatar page on the website in order to see if it uploaded properly
is is a common issue?
im not sure, just something i've personally come across, i never asked around about it
weird
it could have been that i was building the cross platform versions too fast
even more annoying when the game doesn't update immediately
around where it says "this avatar is currently set as your fallback" was a button that said "set as fallback" or something along those lines
hey, im tryna understanding something, why is it exactly that an avi, after the new 200mb limit, isnt blocked when its memory is this big, yet the new size demands anything must be under 200?
looks like it worked
nice
200MB is compressed size, aka download size. VRAM and uncompressed size are 2 other different metrices.
Trying to optimize an avi, unity tells me this. Should i be worried ?
thats just how unity displays really small numbers https://en.wikipedia.org/wiki/Scientific_notation
Scientific notation is a way of expressing numbers that are too large or too small to be conveniently written in decimal form, since to do so would require writing out an inconveniently long string of digits. It may be referred to as scientific form or standard index form, or standard form in the United Kingdom. This base ten notation is commonl...
Ahh gotcha thank you
How do you get 2 bytes of texture memory?
genuinely
So optimised you can store the textures on your fingers and toes
i baked the texture as vertex colors and used smol texture to compensate for the lack of colors, i could technically remove the texture all together and have 0mb, but the colors become to faded out.
anyone know how to solve this problem about when try to convert an avi to quest ? about fallback , i was not have it that issue before 😮
make sure you've read and followed this: https://docs.vrchat.com/docs/avatar-fallback-system#uploading-a-custom-fallback
It looks like you didnt upload to quest and ios yet
is this expected behavior? my avi's bounds are just slightly over recommended and in the editor they only drop it down to "good", but in game they're dropped all the way down to "poor"
although actually the middle number is much lower, hmm 
does this avatar use vrcfury or some tool that runs on avatar build
vrcfury puts a "Bounding box fix" on
oh hmm
why is the avi penalized for having a smaller bounding box though?
does the penalty work in both directions?
your x and z bounding area is more than 5
and it brings it down that much???
my whole point was that the editor says it's good but it's much different in-game
just like how 70,001 triangles makes it very poor, the perf rank system is really jank
but it disagrees with the editor!!
VRCFury
lemme try it without vrcfury
you can disable it at tools > VRCFury > settings at the top of Unity
yeah i did that
now it fails to build the avatar
????
nevermind, it was a fluke i guess
ah. now the bounds are fixed, thanks for the help
Well in the game box is larger and there’s a penalty because bounding box has the capability to make an already bad avatar significantly worse
The larger the bounding box, the less the avatar is blocked by occlusion, and the more quickly it starts rendering, even if off camera.
So while a good avatar with a large bounding box may have little impact, and very poor avatar with a large bounding box will have a much larger impact
Although, according to the docs, bounding box doesn’t even cause the avatar to be blocked sooo
could someone help me understand whats happening here
why its 1.5MB but in the calculator and ingame its 21MB
Top is download size and bottom is VRAM size
Crunch compression only reduces download size
i see thanks
how come compression only works on normal or lower and not high?
bug or am i uneducated once again?
Don't use crunch compression
why
crunch doesn't change VRAM usage, it still has to decompress it when it reaches VRAM. It only assists in raw filesize for the avatar's bundle
yea i know but if can lower the download size without seeing a massive change in visuals why not do it?
quality of your textures, and LZMA assetbundle compression already compresses bundles down significantly
what is LZMA?
it's already used on your avatar's assetbundle when you upload
oh okay
is there a way to preview an imposter from pc?
play the game, click on your avatar, and then below the preview there's a button to show it
I would say crunching can be good depending how you use it. If you have 4K black and white texture masks, it can in fact reduce the file size by 90%+ on these masks, and the decompression is also way faster on these
and it also makes your avatar visible to more people, who limits the uncompressed size of the avatars
you shouldn't have 4k b&w texture masks to begin with
I know, it but even if it's a 1K or 2K texture, it still reduces them by 90%, my PC avatar has a single material, that use two 1K mask textures that I use for the color mask, but I can still see some imperfections because the lowered mask size. if it would be 2K, then I wouldn't see any problems with it
If you have data masks with no gradients that define a model piece, i guarantee they can be 128x128 with mips off
Help please