Modeling Guidelines

Recommendations and tips for creating 3D real-time assets for Ready Player Me avatars.


  • Make every triangle count! A polygon should contribute to the silhouette or help deformations. Smaller details, like buttons are better put into the texture maps.

  • You can bake details from a high-poly mesh into the low-poly mesh, see Texture baking.

  • Geometry density has a gradient with the the highest density around the head and upper torso, and the lowest number of polygons used around the feet and lower torso.

  • Avoid creating long & triangles, as they tend to cause shading artefacts.

  • Avoid creating very small triangles or triangles that have 0 area (all 3 vertices at the same location), as this can generate errors that fail validation.

  • Add thickness to the geometry, or fill holes to avoid needing Backface Culling disabled.

The mesh at the neck is not closed, resulting in a see through hole if backface culling is enabled. This can be fixed by capping the hole in the mesh.

When uploading the asset to Studio Asset Manager, it will warn you about common issues with meshes and triangle counts.

UV mapping

  • Minimize UV splits. Do use splits with padding for hard edges if you bake normal maps.

  • If possible, use fewer and bigger UV shells/islands instead of many small UV shells. Every UV split creates extra data.

  • Straighten UV islands where possible, e.g. belts, trouser legs, and sleeves, to reduce artifacts when texture resolution is reduced.

  • Aim for a consistent texel density, for example ~10.24 px/cm.

Texture baking

  • When you create a mesh with a high polygon resolution, you can use it to put details from that mesh into the texture maps of the low resolution mesh that is used for Ready Player Me. This process is called baking texture maps.

  • During modeling of the low-res mesh, use hard edges (normal splits) on angles of 90 degrees or sharper. This will make the baked normal map not to have to work that hard to get around the corner. There will be less of a gradient in the normals and, therefore, the image compression will be more efficient. But make sure to have padding between the UV splits of the hard edges, otherwise you'll get artefacts.

To create the basecolor maps in a desirable style, we recommend to use our smart material for Substance Painter 2021 (or newer) as a base: ReadyPlayerMe.spsm

Keep basecolor maps PBR-safe, i.e. stay within the 30-240 sRGB luminance range for non-metals and within the range of 180-255 sRGB luminance for raw metals.

Examples of baked basecolor maps

Note that the example basecolor maps above have some lighting information, e.g. ambient occlusion, baked into them, which is usually best supplied separately in the occlusion input of the PBR material.

If your rendering engine does not use PBR shaders, you may need to bake lighting information into the basecolor map like in the examples above.

Last updated