VRChat

VRChat

Avatar question about the Quest!
Hey there,
I hope someone here can help me with a problem.

A friend of me maby wanna buy a VR headset(probably a Quest) too in future and i'm trying to optimise 2 Avatars for the Quest because he would love it to see them, I know how I upload them, but I know very little about Unity and how it works, it is too complicated for a stupid one like me...

So I did my best to lower the Polygons as much as I can with "Mantis LOD Editor"(Avatar Polygons: 3376) , but i'm still getting a performance warning for the Quest, it tells me:
"It will be blocked by default on VRChat for Quest, and it will not show unless a user chooses to show your avatar"
https://i.imgur.com/YaVby7Q.png

My Question:
Does that mean he could use/copy it and also see this Avatar if he allow it somehow in the options?
Would make sense to even try it, or would it **** up his performance that bad?
I can't test is by myself because I have only have a Vive.

I have no Idea how I could optimise it more with my incompetence :/
Původně napsal Liqvid:
Presumably you figured this out by now, but yes, the resources/tutorials are available online. There are many youtube videos with step-by-step instructions on avatar creation/optimization in Blender.
The CATS plugin referred to above is super useful for this task for new users and experts alike.
I personally haven't used the atlusing tool it provides in a long time since, when I last tried it it causes the textures to become all blurry. Perhaps they've updated it to do a better job now but I can't comment on it.
I suppose you can give it a try and see if you're okay with the results. If not, then you can look up tutorials for doing the atlusing yourself online. You'll need some sort of image-editing software to do this. You can try free tools like GIMP if you'd like, but truthfully all you really need is Microsoft Paint or something super basic. Just need to take all the textures and stick them together into one big texture file. This isn't the best way to do it, but... baby steps I suppose.

And just in case anyone new finds this thread and is wondering what all this jargon means:

Atlusing: (creating a texture atlus): The process of taking all the individual texture files your model uses and merging them into one texture. The purpose behind this is that it allows you to use a single material & shader to render the entire model in one render pass. This is very efficient.
Skipping this step means that many render passes will have to be done to render each image of the model (each frame). Because the rendering of a single pass is very efficient, but the stuff that occurs between each pass is rather slow, you can think of it like this.
If you have 10 materials on your model, then you have to render it 10 times, for each frame.
If you have 1 material on your model, then you only need to render it once per frame.
So clearly, this step is very important for good performance, and is the reason the VRChat unity plugin is bugging you about having so many materials.
Oh, and if you're thinking "but I want different materials because I want some parts of my model to be shiny and others to be matte and others to glow etc." don't let that stop you from doing the atlusing step. All of those things can still be done exactly as you want them to be with a single material. You may have to create your own textures to do it (usually just be selectively deleting or recolouring parts of your primary texture), but it can be done.

Multiple meshes/skinned mesh renderers:
Similar to the issues of having multiple materials, having completely seperate meshes means that each one is rendered in its own render pass, with its own materials to boot. So again, having 8 meshes means that your GPU has to render the model 8 times over just to produce a single image. Merging the meshes is really easy to do and the CATS plugin has a button you can press to do it automatically, so please don't skip this step!

Also, if it wasn't obvious, if you have 8 meshes and 10 materials, then for each image of the model produced, the GPU has to render the model 80 times! So it should start to make sense why in-game performance is bad when there's 15 people, all with unoptimized avatars (10-200 render passes), standing in front of mirrors (render each one twice from different directions).
A lobby with 15 visible people in it effectively has 3000 avatars to render!

VRChat avatar performance documentation[docs.vrchat.com]
< >
Zobrazeno 15 z 5 komentářů
Hello there,

I have a few questions before I can answer your inquiry.
Does your Avatar have any kind of special animations, or some kind of glitter, lights and particle effects on it?
Did you reasure that you don't included unneccasary moving limb parts? What about the texture resolution and other animations on it?

3376 Polygons are not that much, I have seen tons of avatars with 10times more than that.

Greetings

Yama
QP 2. zář. 2019 v 7.28 
Reducing polygons through decimation is not the only thing you have to consider when optimizing an avatar. In particular, the avatar has too many skinned meshes, it's using too many materials, and it has too many bones. Skinned meshes can combined into one mesh. Materials can be atlased. Children bones can be merged into parent bones in order to reduce your bone count. All of the above three can be done in Blender fairly easily with CATS plugin, although you have to learn how to do each of them. Doing so will remove the warning notice and allow quest users to see the avatar by default.

At the bottom of the avatar stats window, there should be a button that has Optimization Tips if you need some more help.
Naposledy upravil QP; 2. zář. 2019 v 7.29
Sorry for my late reply!
And thank you for trying to help me :)


Well it have some costume emotes like "Floating away" and dances, but no particles, glitter or other specials.

For some reason the model consists of many individual parts instead of being a combination, what I didn't saw on Avatars that I downloaded before. One for the half face, one for the other half, one hand, a half hand and more....
Its a Jon Snow model
https://i.imgur.com/XLcBfSA.png

Sorry I have absolutly no Idea how I could lower the resolution of the textures :/
Can I do that in Unity somehow or do I need Blender?


Hmm probably I have to download Blender again, but I found it extremly complicated, but Unity is also cofusing for me... But maby this CATS plugin makes it a bit easier.
Do you know some easy step to step videos to make a model quest ready? (that even a fool like me can understand it)
I have to try it somehow.
Tento příspěvek byl autorem tématu označen jako nejlepší.
Presumably you figured this out by now, but yes, the resources/tutorials are available online. There are many youtube videos with step-by-step instructions on avatar creation/optimization in Blender.
The CATS plugin referred to above is super useful for this task for new users and experts alike.
I personally haven't used the atlusing tool it provides in a long time since, when I last tried it it causes the textures to become all blurry. Perhaps they've updated it to do a better job now but I can't comment on it.
I suppose you can give it a try and see if you're okay with the results. If not, then you can look up tutorials for doing the atlusing yourself online. You'll need some sort of image-editing software to do this. You can try free tools like GIMP if you'd like, but truthfully all you really need is Microsoft Paint or something super basic. Just need to take all the textures and stick them together into one big texture file. This isn't the best way to do it, but... baby steps I suppose.

And just in case anyone new finds this thread and is wondering what all this jargon means:

Atlusing: (creating a texture atlus): The process of taking all the individual texture files your model uses and merging them into one texture. The purpose behind this is that it allows you to use a single material & shader to render the entire model in one render pass. This is very efficient.
Skipping this step means that many render passes will have to be done to render each image of the model (each frame). Because the rendering of a single pass is very efficient, but the stuff that occurs between each pass is rather slow, you can think of it like this.
If you have 10 materials on your model, then you have to render it 10 times, for each frame.
If you have 1 material on your model, then you only need to render it once per frame.
So clearly, this step is very important for good performance, and is the reason the VRChat unity plugin is bugging you about having so many materials.
Oh, and if you're thinking "but I want different materials because I want some parts of my model to be shiny and others to be matte and others to glow etc." don't let that stop you from doing the atlusing step. All of those things can still be done exactly as you want them to be with a single material. You may have to create your own textures to do it (usually just be selectively deleting or recolouring parts of your primary texture), but it can be done.

Multiple meshes/skinned mesh renderers:
Similar to the issues of having multiple materials, having completely seperate meshes means that each one is rendered in its own render pass, with its own materials to boot. So again, having 8 meshes means that your GPU has to render the model 8 times over just to produce a single image. Merging the meshes is really easy to do and the CATS plugin has a button you can press to do it automatically, so please don't skip this step!

Also, if it wasn't obvious, if you have 8 meshes and 10 materials, then for each image of the model produced, the GPU has to render the model 80 times! So it should start to make sense why in-game performance is bad when there's 15 people, all with unoptimized avatars (10-200 render passes), standing in front of mirrors (render each one twice from different directions).
A lobby with 15 visible people in it effectively has 3000 avatars to render!

VRChat avatar performance documentation[docs.vrchat.com]
Liqvid původně napsal:
Presumably you figured this out by now, but yes, the resources/tutorials are available online. There are many youtube videos with step-by-step instructions on avatar creation/optimization in Blender.
The CATS plugin referred to above is super useful for this task for new users and experts alike.
I personally haven't used the atlusing tool it provides in a long time since, when I last tried it it causes the textures to become all blurry. Perhaps they've updated it to do a better job now but I can't comment on it.
I suppose you can give it a try and see if you're okay with the results. If not, then you can look up tutorials for doing the atlusing yourself online. You'll need some sort of image-editing software to do this. You can try free tools like GIMP if you'd like, but truthfully all you really need is Microsoft Paint or something super basic. Just need to take all the textures and stick them together into one big texture file. This isn't the best way to do it, but... baby steps I suppose.

And just in case anyone new finds this thread and is wondering what all this jargon means:

Atlusing: (creating a texture atlus): The process of taking all the individual texture files your model uses and merging them into one texture. The purpose behind this is that it allows you to use a single material & shader to render the entire model in one render pass. This is very efficient.
Skipping this step means that many render passes will have to be done to render each image of the model (each frame). Because the rendering of a single pass is very efficient, but the stuff that occurs between each pass is rather slow, you can think of it like this.
If you have 10 materials on your model, then you have to render it 10 times, for each frame.
If you have 1 material on your model, then you only need to render it once per frame.
So clearly, this step is very important for good performance, and is the reason the VRChat unity plugin is bugging you about having so many materials.
Oh, and if you're thinking "but I want different materials because I want some parts of my model to be shiny and others to be matte and others to glow etc." don't let that stop you from doing the atlusing step. All of those things can still be done exactly as you want them to be with a single material. You may have to create your own textures to do it (usually just be selectively deleting or recolouring parts of your primary texture), but it can be done.

Multiple meshes/skinned mesh renderers:
Similar to the issues of having multiple materials, having completely seperate meshes means that each one is rendered in its own render pass, with its own materials to boot. So again, having 8 meshes means that your GPU has to render the model 8 times over just to produce a single image. Merging the meshes is really easy to do and the CATS plugin has a button you can press to do it automatically, so please don't skip this step!

Also, if it wasn't obvious, if you have 8 meshes and 10 materials, then for each image of the model produced, the GPU has to render the model 80 times! So it should start to make sense why in-game performance is bad when there's 15 people, all with unoptimized avatars (10-200 render passes), standing in front of mirrors (render each one twice from different directions).
A lobby with 15 visible people in it effectively has 3000 avatars to render!

VRChat avatar performance documentation[docs.vrchat.com]


̶T̶h̶a̶n̶k̶s̶ ̶f̶o̶r̶ ̶y̶o̶u̶r̶ ̶h̶e̶l̶p̶ ̶a̶n̶d̶ ̶p̶l̶e̶a̶s̶e̶ ̶f̶o̶r̶g̶i̶v̶e̶ ̶m̶e̶ ̶t̶h̶a̶t̶ ̶I̶ ̶a̶n̶s̶w̶e̶r̶ ̶s̶o̶ ̶l̶a̶t̶e̶ ̶h̶e̶r̶e̶ ̶a̶g̶a̶i̶n̶,̶ ̶j̶u̶s̶t̶ ̶h̶a̶d̶ ̶s̶o̶m̶e̶ ̶p̶r̶i̶v̶a̶t̶e̶ ̶p̶r̶o̶b̶l̶e̶m̶s̶.̶

̶U̶n̶f̶o̶r̶t̶u̶n̶a̶t̶e̶l̶y̶ ̶I̶ ̶w̶a̶s̶n̶'̶t̶ ̶a̶b̶l̶e̶ ̶t̶o̶ ̶g̶e̶t̶ ̶i̶n̶t̶o̶ ̶i̶t̶,̶ ̶I̶ ̶w̶a̶s̶ ̶s̶p̶e̶n̶d̶i̶n̶g̶ ̶a̶ ̶f̶e̶w̶ ̶d̶a̶y̶s̶ ̶t̶o̶ ̶f̶i̶x̶ ̶t̶h̶e̶ ̶2̶ ̶m̶o̶d̶e̶l̶s̶ ̶t̶h̶a̶t̶ ̶I̶ ̶d̶o̶w̶n̶l̶o̶a̶d̶e̶d̶ ̶a̶n̶d̶ ̶w̶a̶s̶ ̶l̶o̶o̶k̶i̶n̶g̶ ̶s̶o̶m̶e̶ ̶t̶u̶r̶o̶r̶i̶a̶l̶s̶,̶ ̶b̶u̶t̶ ̶i̶t̶s̶ ̶j̶u̶s̶t̶ ̶t̶o̶o̶ ̶d̶a̶m̶n̶ ̶c̶o̶m̶p̶l̶i̶c̶a̶t̶e̶d̶ ̶f̶o̶r̶ ̶m̶e̶.̶
̶T̶h̶e̶ ̶m̶o̶s̶t̶ ̶t̶u̶t̶o̶r̶i̶a̶l̶s̶ ̶d̶o̶n̶'̶t̶ ̶s̶h̶o̶w̶ ̶m̶e̶ ̶w̶h̶a̶t̶ ̶I̶ ̶n̶e̶e̶d̶ ̶t̶o̶ ̶k̶n̶o̶w̶.̶

̶C̶A̶T̶S̶ ̶d̶o̶n̶'̶t̶ ̶h̶e̶l̶p̶ ̶m̶e̶ ̶s̶o̶ ̶m̶u̶c̶h̶ ̶b̶e̶c̶a̶u̶s̶e̶ ̶t̶h̶e̶ ̶B̶o̶n̶e̶s̶ ̶s̶e̶e̶m̶ ̶t̶o̶ ̶b̶e̶ ̶r̶e̶a̶l̶l̶y̶ ̶w̶e̶i̶r̶d̶,̶ ̶i̶f̶ ̶I̶ ̶t̶r̶y̶ ̶t̶o̶ ̶l̶e̶t̶ ̶C̶A̶T̶S̶ ̶f̶i̶x̶ ̶i̶t̶,̶ ̶t̶h̶e̶ ̶b̶o̶n̶e̶s̶ ̶l̶o̶o̶k̶s̶ ̶m̶u̶c̶h̶ ̶m̶o̶r̶e̶ ̶n̶o̶r̶m̶a̶l̶ ̶b̶u̶t̶ ̶I̶ ̶g̶e̶t̶ ̶a̶ ̶e̶r̶r̶o̶r̶ ̶m̶e̶s̶s̶a̶g̶e̶ ̶a̶l̶l̶ ̶t̶i̶m̶e̶ ̶b̶e̶c̶a̶u̶s̶e̶ ̶i̶t̶ ̶c̶a̶n̶'̶t̶ ̶f̶i̶n̶d̶ ̶"̶L̶e̶f̶t̶ ̶L̶e̶g̶,̶ ̶K̶n̶e̶e̶,̶ ̶a̶n̶k̶l̶e̶ ̶&̶ ̶r̶i̶g̶h̶t̶ ̶l̶e̶g̶,̶k̶n̶e̶e̶,̶ ̶a̶n̶k̶l̶e̶ ̶&̶ ̶l̶e̶f̶t̶ ̶s̶c̶h̶o̶u̶l̶d̶e̶r̶.̶.̶.̶.̶ ̶e̶t̶c̶"̶

̶I̶f̶ ̶I̶ ̶t̶r̶y̶ ̶t̶o̶ ̶u̶p̶l̶o̶a̶d̶ ̶i̶t̶ ̶l̶i̶k̶e̶ ̶t̶h̶a̶t̶ ̶i̶n̶ ̶U̶n̶i̶t̶y̶ ̶i̶t̶ ̶s̶e̶e̶m̶s̶ ̶t̶o̶ ̶w̶o̶r̶k̶ ̶a̶l̶m̶o̶s̶t̶ ̶b̶u̶t̶ ̶f̶o̶r̶ ̶a̶ ̶r̶e̶a̶s̶o̶n̶ ̶m̶y̶ ̶t̶e̶x̶t̶u̶r̶e̶s̶ ̶a̶r̶e̶ ̶t̶o̶n̶e̶d̶ ̶a̶ ̶b̶i̶t̶ ̶i̶n̶ ̶s̶o̶m̶e̶ ̶w̶e̶i̶r̶d̶ ̶w̶a̶y̶s̶,̶ ̶a̶n̶d̶ ̶i̶t̶ ̶t̶e̶l̶l̶s̶ ̶m̶e̶ ̶t̶h̶a̶t̶ ̶m̶y̶ ̶A̶v̶a̶t̶a̶r̶ ̶n̶e̶e̶d̶ ̶s̶o̶m̶e̶ ̶s̶h̶o̶u̶l̶d̶e̶r̶.̶ ̶S̶o̶ ̶I̶ ̶t̶r̶i̶e̶d̶ ̶t̶o̶ ̶m̶a̶k̶e̶ ̶t̶h̶e̶m̶ ̶m̶a̶n̶u̶a̶l̶l̶y̶ ̶a̶g̶a̶i̶n̶ ̶i̶n̶ ̶b̶l̶e̶n̶d̶e̶r̶ ̶b̶u̶t̶ ̶a̶f̶t̶e̶r̶ ̶t̶h̶a̶t̶ ̶U̶n̶i̶t̶y̶ ̶c̶a̶n̶'̶t̶ ̶r̶e̶c̶o̶g̶n̶i̶z̶e̶ ̶t̶h̶e̶ ̶w̶o̶l̶e̶ ̶a̶r̶m̶s̶.̶

̶I̶ ̶t̶h̶i̶n̶k̶ ̶i̶m̶ ̶j̶u̶s̶t̶ ̶t̶o̶ ̶*̶*̶*̶*̶*̶*̶*̶ ̶d̶u̶m̶b̶ ̶f̶o̶r̶ ̶t̶h̶i̶s̶,̶ ̶I̶ ̶c̶a̶n̶'̶t̶ ̶g̶e̶t̶ ̶i̶n̶t̶o̶ ̶t̶h̶i̶s̶.̶.̶.̶

̶T̶h̶a̶n̶k̶s̶ ̶a̶n̶y̶w̶a̶y̶ ̶t̶o̶ ̶y̶o̶u̶ ̶g̶u̶y̶s̶ ̶f̶o̶r̶ ̶t̶r̶y̶i̶n̶g̶ ̶t̶o̶ ̶h̶e̶l̶p̶ ̶m̶e̶ ̶.̶
----
EDIT:
Sorry for whining around so much, finaly I got into it a lil bit at least after experiment for a longer time with CATS. It really gives me headache, but I'm on the right way now.
Thank you kindly again guys.
Naposledy upravil Captain Weegee; 13. lis. 2019 v 18.27
< >
Zobrazeno 15 z 5 komentářů
Na stránku: 1530 50

Datum zveřejnění: 31. srp. 2019 v 11.22
Počet příspěvků: 5