Custom Avatars using VRM assets.
VRM is a 3d file format that is designed to allow creators to build and use custom 3D Avatars in a growing ecosystem of virtual spaces.
VRM Avatars can be just about anything, from a photorealistic human to a grocery shopping cart.
Creating Avatars for the metaverse though has certain elements to keep in mind due to the number of platforms that they can be on. Many metaverses such as Mona use web, VR or Mobile devices and therefore the VRM needs to be designed in a way that will work smoothly on all of those devices with the one Avatar.
Creating a VRM is a lot of fun and you can get some amazing results if you are willing to learn all the ins and outs of asset creation. That said, it is still possible to get great results if you think within your current skill set!
Generally, you will go through the following sections of the process, and each is covered in the following tutorials.
As noted, due to the platforms that these VRMs are to be used on you will need to keep in mind the requirements of the lowest common platform which is standalone VR and mobile devices.
Things like the polycount, number of meshes, material count, and texture size all play a significant part in how well your avatar works in these spaces. Understanding these elements will sometimes affect the design and creation of your character.
There are many ways to create a character asset.
Some will use a sculpting tool like ZBrush or Blender to make a high polygon character. If you use this technique it will be very important to get the polycount down to the required specifications through methods like Retopology and baking the high polygon detail into the low polygon asset using normal maps. If you do not know what these elements means that's not a problem!
It is possible to design their asset to be low polygon from the start. This is recommended if you are starting to create VRM Avatars as the learning curve for high polygon assets can be quite steep.
Following that tutorial we cover different pipelines for Avatar asset creation ranging from the relatively simple to more advanced avatars.
Rigging means applying the asset to a skeleton. Once you have modelled and textured your avatar you will need to rig the avatar in order to make it move properly.
All VRMs require a bipedal skeleton at the moment, that said, how you rig your asset is completely up to you. It is possible to have an entire car be rigged to the pelvis bone for example.
As an option, it is possible to create a more complex rig/skeleton that can support secondary motion on your asset such as cloth, tails, ears etc. For this you can use Spring bones within the VRM system, but you will need to manually add the bones and then paint the weights. Weight painting defines how much each vertex is applied to a bone.
Once you have a rigged model that suits the target platform you need to create the VRM itself. There are a number of ways to do this, but two that are covered in the following tutorials are :
- UniVRM - This uses an addon for Unity. It has the benefit of being able to see the Spring Bones in action without having to build the VRM and test it in Mona. For more information, go to Broken link
- VRM for Blender - This is an addon for Blender, that allows you to export the asset as a VRM directly from Blender itself. For more information, go to Creating your Avatar using 'VRM for Blender'
Adding Spring bones and Collider Groups, or elements that spring bones can collide with, would be done in this stage. These are completely optional however.
Once you are happy with your VRM you can then upload it on a host such as Github or Web3.Storage to use it as you see fit.
It is also possible to upload it on the Mona VRM Marketplace to sell! In order to do this however you will need to pass QA in order to make sure it is suitable for the target platform otherwise it may slow down the space, especially when it is possible to have up to 100 users in a space!