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.
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 16 different blend shapes. These are:
To make things easier in the future, I highly recommend always using the same prefix for each name, so later in Unity it's almost automatic. The prefix being vrc_v_blendshapename.
This gives you a general idea of how I made the different shapes of the mouth depending on the viseme. Another thing to keep in mind is that even if vrc_v_sil doesn't change the shape whatsoever, you must change something regardless.
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.
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 16 shapes.
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 make sure that Blend Shapes is activated too, if it's not, it won't export correctly.
Now write the name you want and export it.
You should have your Unity 2018.4.20f1 or whichever version VRChat uses already set up. If you don't, check this guide out made by my friend Alejandro Peño where he explains how to set it up:
With the character imported, we will add a new component called VRC_Avatar Descriptor.
Now it will appear a couple of parameters you can edit.
We are only going to modify 3 of them. View position, LipSync and Eye Look.
This parameter allows you to decide where the first person point of view is located. In other words, from where are you going to see inside VRChat.
It is a no-brainer that we should put the little indicator at eye level. As close as posible to the eyes.
How can we make our character talk? With this option right here!
In mode, select Viseme Blend Shape.
Now it will appear a Face Mesh tab. Using the little circle on the right, you can select the mesh where the Blend Shape Visemes are stored. In this case, since it's all the same mesh, we only have one option.
Now we are talking (pun intended). Like I said before, putting the right names, makes our lives easier. Every single blend shape is in place. But just to be sure, give it a look.
If you have sharp eyes, you might have realized that blink was nowhere to be seen (These puns just keep coming). That's because we will use the Eye Look tab to configure it.
Click on Enable and a couple of options will appear.
Ignore the others and go to the Eyelids section and select the blendshapes option.
Select once again the mesh where the BlendShapes are stored, and it will appear something like this.
If something is not properly added, you can change it from here. Since we don't have only the Blink Blendshape states, we will leave Blink like it is and change the other 2 so they don't have any state at all. Like this:
Use the preview button to make sure that everything works correctly. You can even check all the other blendshapes if you want!
Once it's finished, you can upload the character like you usually do. Again, if you don't know how to do it, you can check this guide:
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 minutes 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!
Getting the rig
Since we want humanoid avatars, the best way to get a fast rig is using Mixamo.
Mixamo is an automatic rigging website tool that allows you to create quick humanoid for free.
I won't cover how to use Mixamo, since we already have that cover in this post here:
But I will explain how to use all the tools that I used when rigging almost every of the +200 different avatars we have made for the 100 Avatars project.
So tag along, because the world of rigging is one where patience is KEY.
You have the avatar on your Maya proyect ready now.
There are a few places where you have to take a closer look since these are the most problematic areas. These areas are shoulders, armpit and hands. Depending on the character you might have to take a look at other places, specially if it is a complex character.
Ask yourself; are all the bones where they are supposed to be?
In this case... no. Using the X-Ray Bones options you can easly see where each bone is inside the body.
In this case, the shoulders aren't where they should be, so, how can we move them?
With a really useful tool called Moved Skinned Joints.
Go to the Rigging tab, and then to Skin. Almost at the bottom, you should find the tool. Click on the square on the right and then on any joint. Now you can move them freely without any problem!
Use it to move the shoulders where they should be.
Now it's time to skin!
Value is the value you set the influence of the brush. More means more influence. The maximum is 1 and the least is 0.
The Flood button makes every selected region get the value you selected.
With this explanation of the tools, you should have a good idea of how to skin a character inside Maya.
Now, skinning is not an easy thing, at least to make it right. It requires a lot of patience. A couple of advices I can give are, try to use the 1 value as little as you can. You should also use the smooth option since it really is unvaluable. Dont be scared of rotating bones. Aim to get the cleanest breaking point in your mesh.
Remember to check those zones I wrote about earlier and have fun! Skinning is an important process and takes time. The more you practice the better you will become!
If you want to see what's the next step, read my post about how to make visemes for your avatar and configure it inside Unity!