Polygonal Mind
  • Home
  • SERVICES
  • Projects
  • Decentraland
  • Blog
  • Assets
  • / CryptoAvatars

Blog

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

6/3/2020

0 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
0 Comments

Create and upload a VRChat Avatar with blend shapes visemes

6/3/2020

0 Comments

 
The Mission

VRChat uses blend shapes to detect phonemes via a microphone, and adjust your character mouth to the correct shapes, giving the impression that you character is talking. Let's learn how to do it.
Resources

  • MayaLT 2018
  • Blender 2.79b
  • Unity 2017.4.15f1
Blend shapes visemes in vrchat turorial
Premise

Isn't it great when you talk with somebody online and you see his mouth moving while he talks? It really add ups to the experience, specially in Virtual Reality.

That's what this is about. Creating different shapes so you can see yourself talking when you look at a mirror.
It's the little touches that makes something good to something better.
Starting

Let's say you already have your model done, it's also rigged and skinned so its ready to go. But, you want to make some blend shapes because in-game they look neat and funny.

Well, let's make them!
​

First, we need to know how many blend shapes we need to make. VRChat uses 17 different blend shapes. These are:
  • ​Blink left
  • Blink Right
  • Lower lid left
  • Lower lid right
  • aa
  • ch
  • dd
  • ee
  • ff
  • ih
  • kk
  • nn
  • oh
  • ou
  • pp
  • rr
  • ss
  • sil (silence)
  • ss
  • th
It's important to know that these shapes that we are going to make will need to have a very specific name. For example, aa is called vrc.v_aa; ch is called vrc.v_ch; etc...
​
The only exceptions to this rule are the first 4 of the list. Their names will be vrc.blink_left, vrc.blink_right, etc...
Visemes vrchat list
As you can see in the image, there is no "." in any of the names, and that's because Maya doesn't let you write dots in the names. We will roll with it for the moment.
​
Duplicate your character and move it to a side. Hide what is not necessary and show what it is.
Use an image of reference to know how to shape the mouth depending on the shape you need.
eyes and mouth expressions visemes
3D model with different face expressions
This gives you a general idea of how I made the different shapes of the mouth depending on the viseme.
​
You can see that there is not any vrc.blink_right or vrc.lowerlid_right, but I will talk about that later.
​
Another thing to keep in mind is that even if vrc.v_sil doesn't change the shape whatsoever, you must change something regardless. When we use Blender later, when exporting, if Blender detects that "sil" it's the same as the base form, it will remove "sil" from the blend shapes. Move a vert a little bit, one that no one will see, on the back of the mouth, for example.
​
Now that we have every shape done, we will use the Shape Editor.
Open the Shape Editor in the sculpting tab in Maya. Or going to Deform>Blend Shape.
Maya 3D Deform Blend
Now, select one shape that you created and then select the original model. Go to the Shape Editor and click on "Create Blend Shape". Repeat this with all the 17 shapes.
Picture
Before, I said that I didn't have any blink_right nor lowerlid_right and that's because you dont usually need them. If the character is symmetric, you can duplicate your blink_left, select the new target and in the Shape Editor go to Shapes > Flip Target.
​
This will create a mirror effect and making the right eye to blink. You should change the name once it's done.
Export and Import

We have every shape ready, so now we will export all the package. Select all the shapes, meshes and bones and go to export.
​
Be mindful of checking in the box of Animation and making sure that Blend Shapes is activated too, because if it's not, it wont export correctly.
Picture
Write the name you want and export it.

Now we will open Blender, where we will change the names of the shapes to the correct one.
Open a new scene and delete the objects that get created all the time. Camera and light too.
​
Then, import the file we made earlier.
Navigate through the menus to find the Shape Keys sub-menu.
Picture
Here you can change the names of all the shapes. Delete the first "_" and replace it with a "."
​
The last thing you have to do is to re arrange all the shapes to be in order. The order is the same as the list that I wrote at the beginning.
Picture
Once that's done, export as fbx.
Upload

You should have your Unity latest stable version already set up. If you don't, check this guide out made by my friend Alejandro Peño where he explain how to set it up.
Upload Avatars to VRChat Cross-Platform (PC and Oculus Quest).
With the character imported, we will add a new component called VRC_Avatar Descriptor.
Picture
We will draw the mesh into the "Face Mesh" section. All the visemes should appear below there.
Now just click on each section and select the corresponded viseme.
Picture
Like this.
Picture
Once it's finished, you can upload the character like you usually do. Again, if you don't know how, you can check this guide:
Upload Avatars to VRChat Cross-Platform (PC and Oculus Quest).
Conclusion

Blend shapes visemes are a great way to give life to your avatars in VRChat.
​I would 100% recommend using them in your future avatars.

Depending on the model it takes around 30 min to an hour to create all the shapes needed, and they look great.
​
It's a lot of fun making these, so give them a try!

Picture
Pedro Solans
3d animator
​Junior 3D Animator improving every day possible. Videogame and cat enthusiast.
Twitter
0 Comments

    Categories

    All
    Decentraland
    Decentraland En Español
    Maya
    Mixamo
    Morphite
    Substance Painter
    Totally Reliable Delivery Service
    Unity 3D
    Updates
    VRChat

    Archives

    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-2020 POLYGONAL MIND LTD. ALL RIGHTS RESERVED.
  • Home
  • SERVICES
  • Projects
  • Decentraland
  • Blog
  • Assets
  • / CryptoAvatars