Polygonal Mind
  • Home
  • Metaverse Builder
  • CryptoAvatars
  • MegaCube
  • Blog
  • Decentraland
  • Projects
  • Assets

Blog

Upload Avatars to VRChat Cross-Platform (PC and Oculus Quest)

6/3/2020

7 Comments

 
The Mission

Upload to VRChat a character to use it as an avatar can be a bit difficult or messy to do, even more if you want it to be Cross-Platform, here we are learning how to do it.
Resources

  • Unity latest stable version
  • Mixamo
Picture
Before doing anything, is my character compatible
​to be a Cross-Platform Avatar?

For a character to be able to be Cross-Platform it requires to be optimized for mobile devices:
​
  • Maximum size of 5-8 MB.
  • Have less than 5.000 triangles.
  • Only 1 Skinned Mesh.
  • 1 Material for each Avatar, 2 only when neccesary.
  • Textures should be 1024x1024 at maximum.
​
For more information about what you can and can't do with your avatar visit this website:
https://docs.vrchat.com/docs/quest-content-optimization
Prepare Unity to be able to upload Avatars to VRChat

You will need these things to upload your own Avatars to VRChat:
​
  • A VRChat Account (The Steam account doesn't allow to upload custom characters).
  • Unity latest estable version
  • VRChat SDK

In the following link they explain the requirements and how to set up the SDK:
https://docs.vrchat.com/docs/setting-up-the-sdk
In my personal experience It worked when I didn't installed Unity Mitigation Tool, so I don't recommend installing it. Maybe it's just a coincidence. To import the SDK you have to go to Assets > Import Package and select the SDK in the folder.
CAUTION: Importing the SDK will only affect the current Unity project. You will need to import it in every Unity project in which you want to upload something to VRChat.
If its the first time you log in with an account in the SDK you will have to wait until you are able to upload anything to VRChat.
Setting up the Character in Unity

Once you have the Unity Project with the SDK and your rigged character its time to put it on a scene.
​To import the fbx model go to Assets > Import New Asset.
​
You will have to do the same to import the texture (Another way to import them is draging them into the Project Tab).
Picture
Once you have imported both, drag the model into a new Scene. To create a new Scene you can go to File > New Scene; Right Click on the Project Tab > Create > Scene; or simply type Ctrl + N.
1. Change the Scale

To be able to see how big is your character with respect to the world, go to GameObject > 3D Object > Cube. A cube of 1x1x1 will appear in the Scene so you can compare it with your character.

​If you need to change the Scale of the character DON'T DO IT ON THE TRANSFORM COMPONENT OF THE CHARACTER IN THE SCENE, this could create unwanted errors in the future.

​To modify this parameter the best option is to click the character in the Project Tab and in the Inspector Tab > Model change the Scale Factor value until you have the size desired. You will need to Apply to see the change in the Scene.
Picture
2. Create a Material

To create a new material in the Project Tab, Right Click > Create > Material. Left Click in the New Material and in the Inspector Tab should appear the configuration of the material.
Left Click in the circle between the square and Albedo. A new window should appear, showing all your textures in your project, you have to select the one you want for the model. Once you have done this, drag the Material from the Project Tab to the model of your character in the Scene Tab. If everything is ok the model will show now the texture correctly.
Picture
Another option is to click your character in the Project Tab > Material and there click in the circle in the list of materials and choose the material you have created previously.
Picture
Quick Tip: If you want to change the name of something in the project, for example, a material, in this version of Unity you can press F2.
3. Add the VRC Component

Now you click the parent object of your character and look at the Inspector. Click in Add Component, search VR and add the VRC_Avatar_Descriptor.
​
In this component change the parameters of View Position to align it in front of the character. This is where the First Person Camera will be when playing with this character. In theory this would be enough to upload the character, but for caution lets check that there isn't any big problems.

Go to VRChat SDK > Show Build Panel Control, popping up a small window. You have to look at the messages below the button Build & Publish.
Picture
If you want to add Visemes to your character so it can move their mouth when you talk I recommend you to check our Visemes Guide:
https://www.polygonalmind.com/blog-posts/create-and-upload-a-vrchat-avatar-with-blend-shapes-visemes

TIP
Enable Legacy Blend Shape Normals in Unity 2018. Or your character will have weird shading when talking. It can also make your upload a lot larger and so, prevent you to upload since over 10 mb.
Picture
thanks to @franadaVRC for the tip
4. Fix the Rig

Click your character in the Project Tab > Rig and change the Animation Type to Humanoid.
Picture
Go back to the VRChat Tab.
Picture
If you have this problem you have to click on Rig > Configure and select None in the UpperChest box and change the Chest bone to Spine2. Make sure that you have at least 3 fingers rigged:
​Thumb, Index and Middle to have Full IK and Tracking later.
Picture
Picture
Picture
If there is no Red Errors it should be fine. Then click Build & Publish. The build can take some time depending on your computer and the model you are uploading.
Picture
This should appear in the Game Tab. Here you can name the avatar, give a description, indicate if there is any content warning and if you want it to be able to be shared. Make sure to check that you own the rights of the characters. If for some reason in the future you upload a character you dont own you can have legal problems later.
​
To change the preview image you have to go to the Scene Tab and move the new VRCCam in the scene.
When you are done, click Upload and wait for the process to end!

Still have doubts?

Reach us on Discord!
Discord

Picture
Alejandro Peño
Technical artist
Videogame and animation enthusiast. I aspire to become a great videogame artist and developer, providing enriching experiences for those who share my passion.
LINKEDIN
7 Comments
Jaredandruth 83ae link
3/10/2021 01:41:10 pm

It is beautiful

Reply
Jaredandruth 83ae link
3/10/2021 01:51:57 pm

Ya

Reply
bruh link
4/7/2021 03:50:38 pm

reeeeeeeee

Reply
your mom link
7/14/2021 05:11:11 am

WHAT PLATFORM ARE U USING OBHJHGJJDVWHGJVVDGHKJQWFVDGTHJKFQVWCCJGHDFVGUKWEVCDTGYGWFYUDTgfv<ghjvfghdsaevfghjsegvaukvkghrsfgdsrkhjgfvbdrgukf

Reply
Battleboi1 link
8/12/2021 06:02:21 pm

I need genos

Reply
Jake Shaw
10/25/2021 05:48:07 pm

What if I use a custom avatar I made using readyplayer.me but I'm on a chromebook. I want to directly import it to my oculus quest. How do I do THAT?

Reply
dejae
1/7/2022 01:08:07 pm

you can click on VRCHAT while in the readyplayerme webpage and upload directly to vrchat. (click on the vrchat logo)

Reply



Leave a Reply.

    Categories

    All
    Blender
    CryptoAvatars
    Decentraland
    Decentraland En Español
    Maya
    Metaverse
    Mixamo
    Morphite
    Substance Painter
    The Sandbox
    Totally Reliable Delivery Service
    Unity 3D
    Updates
    Vrchat

    Archives

    March 2022
    July 2021
    June 2021
    May 2021
    April 2021
    March 2021
    February 2021
    January 2021
    December 2020
    October 2020
    August 2020
    July 2020
    June 2020
    May 2020
    April 2020
    March 2020
    February 2020
    December 2019
    October 2019
    September 2019
    August 2019
    June 2019
    May 2019
    February 2019
    January 2019
    December 2018
    November 2018
    October 2018
    September 2016

    Picture
Home
Projects
Assets

Picture
Crypto
Friendly
Picture

Subscribe to get some 💚 in your inbox once in a while.

Follow us and your visit will never be forgotten!
Picture
Picture
Picture

 © 2015-2022 POLYGONAL MIND LTD. ALL RIGHTS RESERVED.
  • Home
  • Metaverse Builder
  • CryptoAvatars
  • MegaCube
  • Blog
  • Decentraland
  • Projects
  • Assets