Guides
How to make a 3D avatar for VRChat
Model, rig, add visemes and upload with the VRChat SDK. The full path to a custom VRChat avatar, and where AI can save time.
3 min read

Quick answer
How do you make a custom VRChat avatar?
Create or generate a character mesh, then rig it as a humanoid in Blender and add blend shapes for visemes and blinking. Import it into the Unity version VRChat specifies, set the rig to Humanoid, and configure it with the VRChat Avatars SDK through the VRChat Creator Companion. Check its performance rank, then upload.
The pieces of a VRChat avatar
A working avatar needs:
- A humanoid mesh in a neutral pose.
- A humanoid rig that Unity's Humanoid system accepts.
- Blend shapes (shape keys) for visemes (mouth shapes for speech) and blinking.
- Materials that work with VRChat's supported shaders.
- VRChat SDK set-up in Unity: avatar descriptor, view position, viseme mapping.
- Reasonable performance: VRChat ranks avatars by performance, and viewers can hide poorly ranked ones.
AI generation can help with step 1. The rest is a known, well-documented process. VRChat's own creator documentation is the source of truth for SDK and Unity versions; check it before starting, because they change.
Step 1: The mesh
Option A: generate it. Draw or prompt your character in a front-facing A- or T-pose with arms clear of the body, legs apart and open hands. Stylised characters generate and animate most reliably. Stylised 3D characters with AI. In Vi3W, check the image step for fused arms before generating 3D. Export FBX or GLB.
Option B: model it in Blender, or start from a base and customise.
Then in Blender: scale to a real height, origin at the feet, apply transforms, merge duplicate vertices, and separate fused fingers or limbs.
Step 2: Topology for faces and joints
Visemes and blinking deform the face, so the mouth and eyes need edge loops around them. Generated meshes usually lack these. Options: retopologise the head, or add loops around mouth and eyes by hand. Why AI characters deform badly.
Step 3: Rig
- Mixamo auto-rigs bipedal humanoids quickly; its skeleton maps to Unity Humanoid.
- Blender Rigify or a manual humanoid armature for more control.
How to rig an AI-generated character.
Step 4: Blend shapes
In Blender, add shape keys for:
- Visemes (VRChat's viseme set, such as aa, ch, dd, e, ff, ih, kk, nn, oh, ou, pp, rr, sil, ss, th).
- A blink.
- Optional expressions.
Sculpt each shape from the basis.
Step 5: Unity and the VRChat SDK
- Install the VRChat Creator Companion, create an avatar project (it sets the correct Unity version and SDK).
- Import the FBX. In the Rig tab, set Animation Type: Humanoid and check the bone mapping.
- Add the VRC Avatar Descriptor: set the view position (between the eyes), lip sync to blend shapes, map visemes, set eyelids.
- Assign materials using VRChat-compatible shaders.
- Check the performance rank in the SDK panel.
Step 6: Upload
Upload through the SDK's build panel. VRChat requires accounts to meet its trust and permission requirements before uploading; check the current rules.
Performance tips
- Keep triangles, materials and texture sizes modest.
- Combine materials into one or two atlases where possible.
- Remove hidden geometry (under clothing).
- Avoid many separate meshes.
Where AI helps most
Getting a unique character mesh from your own drawing. Rigging, visemes and SDK set-up stay the same, and VRChat's docs and community tutorials cover them well.
Have an avatar design? Generate the mesh in Vi3W, then rig and set it up with the steps above.
Frequently asked questions
how to make a 3d model for vrchat
Model or generate a humanoid character in a neutral pose, rig it with a humanoid skeleton, add viseme and blink blend shapes, and set it up in Unity with VRChat's Avatars SDK. Keep polygons, materials and texture sizes modest so it gets a good performance rank.
how to make a 3d model for vtubing
The steps are similar: a humanoid model in a neutral pose, a rig, and facial blend shapes for expressions and mouth movement. Many VTubing apps use the VRM format, which you can export from Blender or Unity with the right add-on.
Last reviewed

