Avatar Standards

Avatars on oncyber are VRM models.

Avatars on oncyber's are VRM files. VRM is a commonly used file type used across many platforms which allows you to take your identity with you across the web.

oncyber has some additional constraints on the VRM file to help make sure the user experience is performant for you & others.

oncyber scores your model on a Good, Better, Best Quality Rating, and the higher quality your Avatar is, the more frequently it will appear to others.

The following factors are used to determine the file's rating:

File Size

Large file sizes can cause longer loading times and slow down the overall performance of the experience, particularly on mobile devices with limited processing power and storage capacity.

Optimize the file size by reducing the number of polygons in the 3D model & compressing textures.

  • Maximum file size: 8MB

  • Scoring Level:

    • Good: 5-8MB

    • Better: 1-5MB

    • Best: >1MB

Vertices

Vertices are the points that define the shape of a 3D model. A higher number of vertices in a 3D model can improve the quality of the model, but can also increase the complexity of the model and negatively impact performance. The vrm model provides guidelines for optimizing vertex usage, such as using fewer vertices where possible, and reducing the number of vertices required for small details that may not be visible in the oncyber experience.

  • Maximum number of vertices per avatar: 30k

  • Scoring levels:

    • Good: 10k-30k

    • Better: 5k-10k

    • Best: <5k

Draw Calls

A draw call is a command issued to draw a particular object or element on the screen. In order to render an avatar, draw calls are required to render different parts of the avatar such as the head, torso, arms, legs, and clothing.

A high number of draw calls can significantly impact the performance of the experience, causing lag and slower frame rates. The vrm model incorporates techniques to reduce the number of draw calls required for an avatar, such as combining meshes into a single draw call.

  • Maximum number of draw calls per avatar: 15

  • Scoring levels:

    • Good: 5-15

    • Better: 2-5

    • Best: 1

Texture Memory

Textures play a vital role in defining the appearance of an avatar. Textures are image files that are applied to the surface of 3D models to create the appearance of materials such as skin, hair, clothing, and accessories. Using too many textures or textures that are too large in size can negatively impact performance. Often times the best balance is larger textures rather than multiple smaller textures.

In order to measure the sum impact of number of textures and size of those textures, oncyber uses Total Texture Memory to calculate the sum of the memory used by each texture in the avatar's texture set.

Each texture has a width, height, and pixel format, which determines its memory size in bytes. By multiplying the width and height of each texture by the number of bytes per pixel, the memory size of each texture can be calculated. The sum of the memory sizes of all the textures in the avatar's texture set gives the total texture memory used by the avatar.

Normal Maps

Normal maps are textures that are used to create the illusion of surface details such as bumps, scratches, and wrinkles, without adding additional geometry to a 3D model. Normal maps are an essential aspect of creating realistic avatars, but they can also impact performance if they are too large or if too many are used. The vrm model provides guidelines for optimizing normal map usage, such as using normal maps only where necessary, and reducing their size and resolution where possible without sacrificing visual quality.

  • Maximum number of normal maps per avatar: 1

  • Scoring levels:

    • Good: 1

    • Better: 0

    • Best: 0

Bounds

The bounds of an avatar refer to the size and shape of the space that the avatar occupies in 3D space. If the bounds are too large, it can impact the efficiency of the rendering process, causing the rendering engine to waste resources rendering parts of the scene that are not visible or not important to the user. The bounds of an avatar can also impact collision detection and physics simulation. If the avatar bounds are not accurate or do not match the actual shape of the avatar, it can lead to inaccurate collision detection or physics simulation.

  • Maximum number of normal maps per avatar: 7m x 5m x 4m

  • Scoring levels:

    • Good: 7m x 5m x 4m

    • Better: 3m x 3m x 3m

    • Best: 3m x 3m x 3m

For each of the above categories, you will receive a rating. Based on lowest rating across all categories, your VRM will be graded with the following score.

GoodBetterBest

5-10mb File Size

1-5mb File Size

Less than 1mb File Size

5-15 Meshes

2-5 Meshes

1

10k-30k Vertices

5k-10k Vertices

<5k Vertices

1 Normal Map

0 Normal Maps

0 Normal Maps

7m x 5m x 4m Bound Size

3m x 3m x 3m Bound Size

1-2 materials

If your Avatar is Best Quality rating, it will be displayed the most frequently. Good and Better Quality Avatars will still be displayed in many instances but will be hidden more frequently in order to make sure other users have a good experience.

oncyber may adjust these parameters over time to help deliver a better user experience. If you're file has any of the following criteria, it will not be usable on oncyber for the time being:

  • >10mb file size

  • >15 draw calls

  • >30K vertices

  • >1 normal map

  • >7m x 5m x 4m Bound Size

Rigging

In addition to meeting the above standards, your avatar must be rigged so that it can move and perform animations. You can rig your avatar with automated tools like Mixamo or can rig with 3D modeling software like Blender or Blender add ons.

Last updated