VRChat Avatar 3.0 Tutorial - Adding Facial Expressions to your Avatar

preview_player
Показать описание

Welcome to my updated tutorial on applying facial expressions to your avatar! This video goes over 3 different ways of activating facial expressions, including the classic way of hand gestures, as well as using toggles or a puppet menu! Hopefully this helps you make your avatar feel more alive!

0:00 - Intro
0:27 - Creating Face Animations
1:21 - Method 1: Hand Gestures
2:38 - Creating FX Controller, Expression Menu & Expression Parameters
3:21 - Method 2: Toggles
5:06 - Method 3: Puppet Menu

Looking for a custom model to upload? Try booth or gumroad!

#VRChat #Avatars #VR
Рекомендации по теме
Комментарии
Автор

For those wondering. In current versions, the "controllers" are located in Packages > VRChat SDK - Avatars > Samples > AV3 Demo Assets > Animation > Controllers

okenasmr
Автор

thank goodness for 3.0 toggles. I never liked controlling expressions with gestures, especially with Index controllers.

CaseFace
Автор

By far, the best VRChat tutorials on Youtube.

These have helped me out so much the last couple of weeks. :)

JackieLynn
Автор

PSA: If you notice your gestures are working fine, but the normal face is stuck on one, go to the "All parts" Section, then make sure the yellow/orange one is your Idle animation. If it isn't, switch to it. That would be where the switch/toggle starts.

ploppichuuVA
Автор

You're a legend! Spent hours trying to fix get my models face to do what i wanted, couldnt find out what it was. Most tutorials are stupidly long and dont have any awnsers, so i wasnt gonna bother watching them. Then i remembered you tutorials got me through the start of making models when i first started. And now, once again, you got the awnser i needed in a short but complete video.

juliusklein
Автор

Hey mate really can't thank you enough for your tutorials. I went from being completely afraid of 3.0 to loving it because of your tutorials. The way you teach is really understand and straight to the point so its as least overwhelming as possible and I just really appreciate it. This is my go-to channel for anything 3.0 related and I've come a long way under your wing. Thanks mate!
-KawaiiFira VRC

tetherballobsession
Автор

Pro tip, make a list of all your facial animation blendshapes you used for each guesture. On each guesture, set the blendshapes you used on all other guestures to zero to prevent artifacting while transitioning to different guestures on your hand.

paulblart
Автор

PSA: If you happen to have an animation controller component in your Body mesh, it will forcefully switch the animation tab to interacting with that, preventing you from selecting it while recording animations in the root avatar. Furthermore, if there's a controller in that animator, creating animations from there will index the animations as Body > Blend Shapes, which when put in the avatar controller, will cause it to look at the Body as if it were the Blend Shapes themselves, and be unable to interact with it, causing it to do nothing at all.

MrShrum
Автор

Thanks for showing Method 2 finally I know how to proper make Toggles

TheKomar
Автор

I did this differently but it worked out, so in case anyone else is having trouble and wants to try a different way: Write defaults are off. start goes to idle (this is an animation that sets all blend shapes to either 0 or their default state for resting face [don't make changes to the blendshapes that start with "vrc."]). Then idle goes to an empty wait state with no transition condition. Duplicate the idle animation to create every other animation for the face because each animation should include the instructions to set all blend shapes back to default, not just change the ones you want to use for that animation! Now set up "any state" to go to each of the gestures except for idle, and give them all a transition to exit on the condition that the variable no longer equals whatever represents that gesture (basically the same as the transition from any state except with the notEqual condition). I may have added an unnecessary step here, but I also created an avatar mask and called it head and just only selected the head. Then I applied the mask to both the left hand and right hand layers. I moved the right hand layer below the left hand in the animator and gave them both the same weight making the right hand take priority unless it's in the idle state bc it will have transitioned to the wait animation which does nothing giving the left hand a chance to shine. Lastly, I decided I didn't like that sitting my right controller down made the left hand useless (bc the animation would play until the right hand changed and left hand only matters when the right hand is idle), so I made the open hand gesture (I use for cute sleeping face) only trigger on both layers if both the left hand and right hand are open at the same time and set the right hand open hand to transition to the wait without any conditions instead of the exit. Might want to turn off or set exit times to 0 too. Sorry this comment got so long. Hope it helps someone.

Capt_Lucy
Автор

FOR THOSE STRUGGLING WITH TOGGLES:
If you have multiple animations, that don't rely on an int you *MUST* put them on a NEW LAYER. Create a new layer, name it accordingly, set weight to 1, and repeat the steps. It isn't possible to add multiple toggles that are booleans to 1 layer. I was stuck on this for the longest time.

TimeWisely
Автор

Awesome tutorial as always, never seen any that explains the gesture menu

alonsovargasandresrodrigo
Автор

and here we are again, back to this tutorial for maybe the 15th time because i can never remember how to do this lmfao XP
your tutorials are the best tho. super easy to follow and understand

maplebrownsgr
Автор

fast, clear, straight to the point, amazing!

Chitus
Автор

To anyone having a problem with Method 2, where the animations loop despite "Loop time" being disabled on them: Try unchecking "Can transition to Self" when clicking on the transitions in the animator. This fixed it for me

QWERTYCommander
Автор

You are a chad among mortals for doing this

BeeBN
Автор

This dude's tutorials are life savers... my god.

JordaNeale
Автор

make sure to toggle "Saved" and "Synced" in your VRC Expression Parameters Object - otherwise others will not see the expressions (but you will as it is local only, took me some time to figure out)

LekroPower
Автор

Thank you! Expression menu breaks lipsink, but hand emotions controller works perfectly!

Leonard_Gray
Автор

everytime i wanna explain to someone how t
o do this stuff i always use ur tutorial vid to show them thanks for making this

sionhall