Banner for the page
0

How to create a VRChat avatar

A step-by-step guide for creating an avatar for VRChat.

Custom expressions

A custom VRChat expressions menu

Expressions work similarly to gestures however they are activated from the VRChat Expressions menu (the wheel or radial menu). When the user activates a menu item, VRChat will set the corresponding parameter of your animator controllers.

Ensure your parameter names are identical to your animator controller parameters.

You should create a parameter list before you create a menu.

Create the parameters list

Default parameters list

VRChat requires that you define what parameters you want to take from the menu and pass to your animator controller.

  1. in the Project panel go to the "My Expressions Menus" folder
  2. right click it and go to "Create" then "VRChat" then "Avatars" then click "Expression Parameters"
  3. rename it to something like "My Parameters"

Add parameters

A new parameter

Add any parameters your animator controller requires. For this example we will add a "IsHatVisible" parameter and set it to "bool" because it can be yes or no (see below).

Booleans

A boolean can be 2 different states: yes or no. Use it to toggle accessories.

Floats

A float is a number with decimal points. It is usually 0.0 to 1.0. It is usually used to indicate percentages.

Integers

An integer is a whole number. It is usually used to indicate one of multiple options.

Create the menu

Default VRChat menu

Now that you have parameters you can create the menu.

  1. in the Project panel make a new folder called "My Expressions Menus"
  2. right click it and go to "Create" then "VRChat" then "Avatars" then click "Expressions Menu"
  3. rename it to something like "My Menu"

Add menu and parameters to VRChat avatar

Expressions menu and parameters fields

Now that we have our menu and parameters defined you need to add them to the VRChat avatar:

  1. inspect the avatar in the Hierarchy panel
  2. go to the "VRC Avatar Descriptor" component and expand "Expressions"
  3. next to "Menu" search for the menu you created
  4. next to "Parameters" search for the parameters you created

Build menu

Menu with toggle

Finally you can actually build the menu:

  1. inspect the Menu you created
  2. click "Add Control"
  3. give it a name which is shown in-game
  4. optionally set an icon
  5. change the "Type" to whatever you want (in this example we are toggling an object so set it to "Toggle")
  6. for "Parameter" select our newly created parameter (ie "IsHatVisible")

Done

Upload or test your VRChat avatar and open your Expressions menu. When you activate your menu option it should pass a new parameter to your animator controller which causes your state to change (in our case it togges our hat).

More topics to cover in the future:

  • radial/two-axis/four-axis puppets