Note: For most people, the process of getting from not even having unity on your computer, to getting your own personal avatar uploaded to VRChat should take less than an hour if you follow these instructions!
This document will aim to take you through the very basics of creating your own VRAD avatar and getting it uploaded. The document can look overwhelming, but for the most part, many of the steps are just repetitive to ensure everyone understands.
From the start of the document to the Achievement Unlocked section should take about 10 minutes. Not including install times.
Once everything is installed and setup, I’ll guide you through the process of doing a very basic head swap, so you can have your own personal avatar ready to go, with minimal effort.
I have attempted to make the process as simple as possible for those that have no idea how to use unity. It will then naturally progress to becoming more advanced. For those that want to get a bit more personal, well, it can take as long as you want.
We’ll then move on to some more advanced options and customisation. This section is reserved for those that would like to add a little flare and personality to their avatar.
I hope this gives you all a glimpse into avatar development, and acts as a springboard for creating your own avatars.
Director
Downloading the dependencies.
Downloading the Unity Hub
1) First, we need to download the unity hub. This just acts as a place to access your different unity versions.
Install it from here: https://unity.com/download
This is just a hub, it is not unity itself. Although it may ask you to download unity during the process, it’s up to you whether you want to or not. There are many different versions of Unity, and VRChat only works with some of them which will not be offered by default.
Downloading the correct version of Unity
2) Next we shall download the specific version of Unity that VRChat requires. At the time of writing that is version 2022.3.6f1.
Navigate to here: https://creators.vrchat.com/sdk/upgrade/current-unity-version/
When you click the link, it should open unity hub and install the correct version of unity. Do the installation process, and once complete you can close the hub and unity.
Downloading the VCC
3) Finally we need to download the VRChat Creator Companion (VCC). This will act as a hub for your VRChat projects.
Download and install it from here: https://vrchat.com/home/download (You will have to login). Image on the next page…
Once these things are installed, you should never have to open Unity hub, or unity manually. You always open the VCC and open your projects from there.
This is the end of the software installation process. In the advanced section, we can look into installing Blender, but we don’t need that for now.
Setting up the project
At the top of the VCC you will find a button that says “Create new project”. Hit that bitch.
Then follow the steps.
1) Select the correct project type.
2) Name it.
3) Decide where you wanna save it.
4) Create it.
Plugins
Once you click Create Project, it will begin installing plugins automatically. Plugins are incredible quality of life additions to your projects. Some of them are obligatory, like the VRC SDK, but some are optional. We will be installing all of the ones you will need either today or in future. Although you can import plugins directly into your project, the VCC keeps plugins automatically updated, and is the advised method for importing plugins. I appreciate this makes no sense right now, so more on this later.
Curated Plugins
If you can’t see this page, go to the home page of the hub, find your project and click “manage project”.
These are the ones that VRChat officially supports and the ones we will be using.
These 3 are essential. Install them by clicking the plus symbol. Each one will install, then you can install the next. Here is a full list of plugins you will need:
Any that are already in the package manager , install them by pressing the plus button, any that aren’t, need to be obtained from the Googles.
How to install a plugin that isn’t in the VCC. Community Plugins
We’ll use poiyomi as an example. This is an incredibly powerful shader that can add beautiful visual effects to your avatars. The VRAD avatars use this extensively for many of their animations. Search for Poiyomi on Google.
Or just click this: https://github.com/poiyomi/PoiyomiToonShader
Scrolling down the page you will see this:
Option 2 DON’T DO THIS: Now as mentioned before, by clicking option 2, you can download the plugin and install it directly to your project. However, the VCC will have no control of this and you will have to regularly update it manually by deleting it from your project, redownloading it, and reinstalling it. IT’S A FUCKEN BALL-ACHE!!!
Option 1 DO THIS: Clicking option 1 will have the plugin managed by the VCC, so whenever it requires an update, the VCC will do it for you automatically. Thanks VCC! Have a cookie!
Most plugins will have an option to install to the VCC. If this is an option, there is never a reason to use option 2!
Once it’s installed, go to the plugins and click the plus symbol to use it in your project.
Now we have Poiyomi installed, let’s look at the rest of em.
2) Gesture Manager: Allows you to control your avatar inside unity as if you were in VRChat. Gives you a radial Menu to test animations
Built in to VCC just click the + symbol.
3) Avatars 3.0 Manager: A tool for combining animators.
Built in to VCC just click the + symbol.
4) VRC Quest Tools: You will need this to convert your avatar to Quest. All VRAD avatars must be visible to Questies.
Pretty sure it’s built into VCC, but if not, go here: https://github.com/kurotu/VRCQuestTools
3) VRCFury: A powerful tool for adding animations and toggles to your avatar.
Go here: https://vrcfury.com/download
Choose: Click here to add VRCFury to the VRC Creator Companion
4) Pumpkins Avatar tools: This can set up avatars for you. It can also copy components from one avatar to another.
Go here: https://github.com/rurre/PumkinsAvatarTools
It should now appear in the packages as an option. Click the plus symbol to use it in your project.
5) Liltoon Shader: Similar to Poiyomi shader, but has different options. VRAD Avatars can use both.
Go here: https://lilxyzw.github.io/lilToon/#/
That’s all the plugins. Ensure you have pressed the plus on all of them and they are all installed into your project. We can now finally open unity.
Once we’ve installed all that shit, we can finally open our project. Clicking open project will take an excruciating length of time. It may feel like you will grow old before you can finally start doing stuff, but trust in unity. When it finally opens, your project will look pretty sparse. Lets get it set up how I find it most intuitive.
Organising your project window
If any of these tabs are missing, you can find them in Window. Labelled 11 in image. Just grab the tab and put them in these exact locations. If any of these items are already there, ignore and move to the next.
Ignore Tabs: Advanced toggle creator, Lighting, Parameters.
1) Hierarchy. (Window > General)
2) Scene. (Window > General)
3) Game. (Window > General)
4) Animator. (Window > Animation > Animator) (Ensure you pick animator, not animation.)
5) Inspector. (Window > General)
6) VRChat SDK. (VRChat SDK, marked 12 in the image above > Show control panel)
7) Pumpkin tools. (Tools > Pumpkin > Avatar Tools)
8) Project. (Window > General)
9) Console. (Window > General)
10) Animation. (Window > Animation > Animation) (Ensure you pick Animation, not animator!!!)
Well done, you did it. Unity is all set up ready for you to begin your project. I’m so proud of you, have a cookie.
Next we will move on to importing the headless avatar base, and doing a headswap.
SAVE THIS SHIT RIGHT NOW!!!!!
File > Save (or CTRL+S)
Installing the headless base
First we need to get the Agent Base into your project. You can download it from here:
https://1drv.ms/f/s!AlCufDaDd45zoPU7XP7fuRsoQ0WQeA?e=mbn9T8
Once this has downloaded, you may need to unzip it. Do that.
Base Password
Inbox Pink for the password. If she’s asleep or you’re too excited to wait, tag devs in Discord and get someone to DM you the password. The password should only be inboxed privately! Never shared publicly in the discord server!
Back to Unity
- With the assets folder selected (1)
- Right click any blank area in the assets folder (2)
- Choose “Show in explorer” (3)
This will open a window on your desktop. If it hasn’t taken you into the assets folder, then open it. Now drag your unzipped nohead folder into the assets folder. Make sure you drag it into the assets folder. If it’s not inside the assets folder, I don’t know what will happen, but I assume your PC will explode!!! Nobody has ever lived to tell the tale. See the next image.
Wait until it has completely moved across. Then head back to unity. Unity should enter a loading phase and you won’t be able to do anything until it’s complete. If Unity does not start importing the new thing, then minimise Unity, or click the assets folder on your desktop, or your browser, or anything that’s not Unity, then click back to unity. Eventually it will happen.
Wait until it’s done (You have no choice, Unity won’t let you do anything).
In the project tab, navigate to NoHeadFem > Prefabs, then drag and drop the prefab into your hierarchy.
Right Click it in your Hierarchy and select: Prefab > Unpack Completely
Now she is ready for the headswap. The next section will be about importing your choice of avatar, chopping its head off and frankensteining it onto the base.
Then File > Save (or CTRL+S)
SAVE THIS SHIT RIGHT NOW!!!!!
Performance Rank
Medium performance rank!!!!
I have created this base to make it easy for you to obtain a medium performance rank with a simple headswap. We want to be fair to other VRChat users, including our own members, and when avatars start verging into poor/very poor performance, it can cause stutters and lags for everyone. Our official stance is that you should try to create an avatar that hits the Medium Performance Rank. Your avatar should also have a Quest version attached, and imposter generated. More on these things later.
Notes:
I have sunk hours into optimising the base avatar to ensure that it remains Medium ranked. I’ve done as much effort as I can up-front to make things easier for you. t. If you’re struggling to find out why it’s dropping, reference the following sheet:
Performance rank check sheet I done gone n made…
https://docs.google.com/spreadsheets/d/1z9NTewT79qXhO1SHXZ7bWjlWlo1WsFDNOGG_Ze5iJKs/edit?usp=sharing
If you still can’t figure it out, ask one of the devs in VRAD to help you. The validations in the VRC SDK tab will give you a good indication.
Secondary Heavy Avatar
Once you have your mid avatar and it has been approved, then you can create a more crazy avatar (ref: Heavy Avatar) that is whatever performance rank you want. This second avatar can be used only in approved situations, but you can put all kinds of weapons, particles, lights and animations on it. Whatever you have the skill to do, you can do it, as long as it remains within the theme of the RP.
With this, I must ask you acknowledge that the creation of this avatar is for your own enjoyment though, and opportunities to use it will be very limited within the community. Heavy avatars should also have Quest Versions attached, and imposter generated.
FAQ regarding the use of heavy avatars.
Can I use my Heavy avatar…
NO…
- While at HQ during briefings? No. It’s not fair on other agents.
- While on AOTW patrols? No. It’s not fair on other members of VRChat.
- While we are guests at another communities event? No. There may be a lot of people in attendance, it’s unfair for your avatar to lag them.
MAYBE…
- VRAD Incursions? Maybe, it depends how many people are in attendance, and how mental you went with additions.
- VRAD Urgent Assignments? Maybe, it depends how many people are in attendance, and how jank your avatar is.
YES…
- During overtime missions? Yes. As long as all other people in your team agree.
- When I’m hanging with my friends or chillin’ in VRC outside VRAD events? IDC, do what you want, I’m not your mum.
Avatar Shopping
Booth
There are plenty of places to find an avatar you like, but the most popular is Booth. Booth has such a massive selection of Anime style characters, and you’re bound to find one to suit you.
Here’s a premade search for you. It is not exhaustive though, so have a click around:
https://booth.pm/en/browse/3D%20Characters?q=vrchat&sort=new&tags%5B%5D=3D+Character
If it is not in English, you can click here. Even then, most things in Booth are written in Japanese:
Please note, most of the descriptions on Booth are written in Japanese. They will not translate when you click this. Some developers include English translations in their descriptions though. TBH you’re only looking at the pictures anyway. Find a face and/or hair you like. We already preinstalled the dependencies.
As a rough guide, 1 Japanese Yen is about 1 USA cent.
So 100 yen = $1 (USA)
Most Avatars are around the 4000 yen range, so we can assume that’s around $40 (USA).
Gumroad
Anime characters are the general go-to for communities like ours, but there is also the option of egirl/eboy avatars. These can mainly be found on Gumroad. Egirl/boy avatars can have incredibly high poly counts though, which may push your avatar out of the medium performance rank and into Very Poor. If this happens, you will not be able to use it for VRAD related activities 90% of the time.
There are loads of other places to find avatars too, but Booth and Gumroad are the most popular.
Alternatives
Search Google for “VRChat Avatar”. You will find lots of places that offer free avatars.
So you have installed the dependencies, you have selected an avatar and downloaded it to your computer. You’ve unzipped anything that needs to be unzipped. Now it’s time to get things started.
Most avatars you buy will come with something called a Unity Package. It generally looks like this:
Some avatars may have multiple. It’s up to you to figure out which one looks like the most likely candidate to contain your avatar. In the above case, the second package looks like it is the correct package. The first one appears to have something to do with nails? We won’t be using the body anyway, so this one seems to be irrelevant.
With your avatar unity project still open, double click the Unity Package. It will begin importing into your project. If you have multiple projects open, I have no idea which one it will import into.
You’ll get a popup that looks like this:
Click import. Unity will do some stuff, and lock you out of touching anything. Just relax while it does its thing. On my laptop with an SSD, it took 21 seconds. If you’re using a hard drive, it could take up to a couple of minutes.
I can see in the screenshot above that the very top folder is MaruBodyAvatars. So I’ll find this in my assets folder.
Now we need to hunt around inside the folder and find the prefab. In my case is contained multiple prefabs.
- Is entirely clothed. We don’t need the clothes, but if that’s the only option, then import it
- Doesn’t have a head. Completely pointless for our requirements.
- Is just a head. If I wasn’t writing a tutorial I would probably use that
- No clothes. Just body and head. This would be a nice secondary option if its available.
- A ring? What good is that? Begone, thot!
As we’re writing a tutorial I will use 1, because then I can go through the relevant deleting process of all the clothes that you may have to do.
Importing the new head
I used the little triangle next to NoHeadFem to collapse it in the Heirarchy, then dragged LuciferAngel Into the Hierarchy. You can see now that both avatars exist in the scene together. Lucifer is much taller, but it doesn’t matter. Again we need to unpack the prefab completely.
In booth avatars, generally they call the face “Body”. We need to keep this of course. We also need to keep the 2 hair meshes, but in this case we can delete everything else. Her actual body is called MaruBody_Sotai. If you can’t tell what something is by its name, you can highlight them in Heirarchy, then click this checkmark in inspector to see what turns off. Turn it back on if you want to keep it. If not, delete.
Some avatars come with hair ribbons, or ears, or head accessories. At this stage you can keep them, but if they take the avatar into Poor performance when it’s time for upload, you will have to choose which components to sacrifice.
This Halo thing on her head was actually hidden in the armature. Following the path down through the Armature to her head, I found it. I will delete all 3 of the highlighted things to get rid of it. Ring collider can also be deleted, but I forgot to highlight it.
Once all the unnecessary components have been deleted, we have this situation.
Now lets delete all the Armature stuff we don’t need. These are the bones that our avatar doesn’t need anymore. If the head ever collapses when you delete something, just CTRL+Z to go back a step.
As soon as we drop down Armature, then Hips, straight away we know we don’t need any of the legs or skirt stuff, so we can delete those. Don’t drop them down any further, else it won’t delete the things inside. For this we will keep the plane collider though, because that will stop the hair going through her body when she runs backwards.
Heading deeper in the Armature, opening spine and Chest, we find these. We don’t need them… YEEEETUS DELETUS!
I found some more colliders in here, so we’ll keep those for now. But with all of the bones below the neck deleted, our hierarchy now looks like the following image. Remaining meshes in red, and remaining bones and colliders in blue.
Now to resize and position the head. Ensure you have the base of this avatar selected in the hierarchy. Do not try moving individual stuff because it will cause a whole bunch of janky shit to happen.
1) Select the very base. 2) Select the move tool. 3) Scale tool. 4) You should never need to move the head along the red (side to side) axis. 5) Generally only up and down is required. 6) Occasionally back and forward.
Moving on to the next screenshot below this text.
If you need to scale (1), ONLY EVER USE THE HANDLE LABELLED (5)!!! This scales proportionally. If you use 2, 3 or 4 it will break everything. You may need to switch between move and scale until you have the head in the perfect place.
Finally she’s starting to look like an avatar. You’re so close now.
SAVE THIS SHIT RIGHT NOW!!!!!
Now we need to drop down the NoHeadFem in the hierarchy so we can see the “Headswap stuff in here” placeholder. We will grab only the meshes and put them in there. They must go in here because this Parent object has animations. If you don’t put them here, you will have a levitating head above a cardboard box when your agent goes into stealth mode.
>>>>>>>>
Next start dropping down the Armatures. Ensure head bone of your new avatar is closed so everything moves with it. Drag the head bone from your new avatar and drop it into head in the Agent. Then drag the neck of new avatar into neck of agent. The chest parent contained some colliders, so I closed the chest first, and then dragged it up into chest so that everything inside it moved as well.
Collapse spine and drag it up into spine. Then collapse hips and drag up into hips. Do not bother with armature.
Once all the bones are moved, the base can be deleted and the Armature. In this case I deleted LuciferAngel from the hierarchy, and Armature. Nothing else remained. The following is how the hierarchy looks with all the new stuff moved into the agent:
Click NoHeadFem in the Heirarchy. Scroll down inspector until you find this lipsync section. Drag and drop your Face mesh (in this case called body) into that box.
The visemes will auto populate. If they dont, choose viseme blendshape from the dropdown. If a few end up blank, just open the “Mode” drop down and find something that looks similar to what it wants.
Click on every mesh in the hierarchy one by one. Look in the inspector tab. Scroll down until you find Proes. Anchor Override. Drag and drop the hips bone into the anchor override box for every mesh.
Positioning the Sunglasses, Armour and Ciggy
Before we upload the avatar we need to position the head related equipment onto your transplanted head. Each head is a different shape so the shades, ciggy and foil hat positions need to be personalised. I added shapekeys to make this process as painless as possible, but we do need to edit the animations. Don’t worry, it’s easy.
Click (1) NoHeadFem, then (2) the Animations tab and (3) look for Shades On in that drop down menu.
In the next image click the things in order. If you don’t do them in order, stuff will break!
1) Press record. Be very careful what you click and move while it’s recording or it will add keyframes that will break the sunglasses animation.
2) Highlight body in the hierarchy.
3) Find the shades sliders in the inspector tab and slide them around until the sunglasses are in the right place.
Once you’re happy where the shades are, click record to end the recording.
Do the same with BOTH the CiggyOn and ArmourOn animations.
- Click NoHeadFem in hierarchy
- Click Animation Tab
- Find CiggyOn animation in drop down
3b) or ArmourOn animation in drop down
- Click record
- Highlight body in the hierarchy
- Move the ciggy sliders until it’s in her mouth
6b) if doing armour, move the tinfoil slides until it’s on her head.
- Click record to end.
Now head to The VRChat SDK tab. Log in. Then go to the builder section of the tab. At this point it may show that the avatar is poor performance. Don’t worry yet… Auto fix anything that wants to be auto fixed. If it still says Poor performance once the autofixes are done, then worry.
Make sure it’s still medium ranked. If it’s not, you need to sacrifice some stuff like your fluffy ears, or hair ribbons, or horns etc… or learn blender.
Name the avatar, set a description if you want. Do a picture. Blah blah… scroll down to online publishing, tick the box, then upload.
Yay, you have a PC version. And I’m bored of typing for now, so I’ll write the quest conversion section when someone gets this far.