Sustainability of Digital Formats: Planning for Library of Congress Collections

Introduction | Sustainability Factors | Content Categories | Format Descriptions | Contact
Format Description Categories >> Browse Alphabetical List

VRM

>> Back
Table of Contents
Format Description Properties Explanation of format description terms

Identification and description Explanation of format description terms

Full name VRM
Description

VRM is a glTF2.0 based format for handing humanoid 3D avatar (3D model) data for Virtual Reality (VR) applications. Defined and developed by the General Incorporated Association VRM Consortium (shortened to VRM Consortium going forward), established in April 2019, with the goal to standardize a platform-independent 3D avatar file format, VRM, and with the objective (per press release) of "building an environment that allows for further breakthrough in national and international AR/VR markets where 3D avatars are being utilized." The VRM format and its standard implementation (UniVRM) is open source and publicly available free of charge. VRM 1.0 specification was released in September 2022.

Structure of VRM:

VRM Documentation states, "VRM is formulated on top of the 3D standard format gITF 2.0 to handle the humanoid model. The humanoid motion can be reproduced based on defined Humanoid bones in VRM."

The Khronos Group presented "VRM - Extending glTF for Portable Humanoid Avatars", in November 2019 to SIGGRAPH Conference, and described the VRM structure as, "... glTF based... VRM creates intermediate layer and constraints that makes application capable to control avatars in uniform manner."

  • material extension: cel shading, non-photorealistic rendering (NPR) material definition
  • VRM extension: for humanoid avatar (humanoid bone structure, secondary animation, licenses)
  • base technology: data constraints requirements (scale, data type, local rotation, stance)
  • bare glTF 2.0 (.glb)

For the general structure of glTF as a cluster of files, see description in glTF_family and the figure showing component files from the glTF 2.0 specification. The glTF 2.0 Quick Reference Guide provides a compact summary of glTF features.

VRM Documentation states the use of UniVRM to make VRM files with the following workflow:

  • Import 3D data to Unity project.
    • Set up materials, make T-Pose model, enable model normalization.
  • Export 3D model as VRM in Unity.
  • Import VRM file to Unity project.
    • Customize settings such as license, expressions, spring bone, etc.
    • To verify customized settings check model in play mode
  • Export 3D model as VRM.

Uses of VRM:

According to the VRM Documentation, users can create their own avatar with a character maker in the VRM format, use that same VRM character to host a live stream, visit and hang out in a other avatar's live channel(s), start a VR game, explore and engage in a VR world, VRM model data can be used by any application that supports VRM. Using the VRM format based on the humanoid character and avatar, VRM Consortium wants to unify the differences from 3D model data and make handling 3D model easier on the applications side.

Production phase Used across all production phases. VRM format is used to create 3D avatars (initial state), those 3D avatars can host, visit, and/or stream across VR worlds (middle state), and VRM format avatars are available for download for users to customize.
Relationship to other formats
    Defined via glTF 2.0, glTF (GL Transmission Format) 2.0
    Contains JSON, JSON (JavaScript Object Notation) Data Interchange Format. VRM 1.0 specification defined using documentation and JSON Schema.
    May contain PNG, PNG (Portable Network Graphics). Per specification, "Image contains Texture (referenced by Material) and Thumbnail (in VRM Meta). Those images are stored as PNG(JPG) bytes.
    May contain JPEG, JPEG Image Encoding Family. Per specification, "Image contains Texture (referenced by Material) and Thumbnail (in VRM Meta). Those images are stored as PNG(JPG) bytes."

Local use Explanation of format description terms

LC experience or existing holdings The Library of Congress has a small number of VRM files in its collections.
LC preference See the Recommended Formats Statement for the Library of Congress format preferences for Design and 3D formats.

Sustainability factors Explanation of format description terms

Disclosure

VRM is an open-source, royalty-free format based on the 3D standard format glTF2.0.

    Documentation

VRM-1.0 Documentation standard officially released September 2022.

VRM 1.0 specification defined using documentation and JSON Schema.

Adoption

According to Sal Romano in RPG Maker Unite details 3D Character Converter, July 2022, "since the recent advent of virtual reality games and VTubers, VRM character models have become extremely popular within the game creation community, and countless extraordinary 3D models have been born. Users can either use existing VRM models available on the internet, or convert their own custom VRM models for 2D game uses!"

VRM Documentation provides users with a standard, open-source, C# implementation (UniVRM) that reads and writes VRM files for Unity, an editor platform for creating and operating 3D content.

Platforms for 3D models that use VRM format include: The Seed Online, VRod Hub, and CyptoAvatars.

Application Plug-ins that use VRM format include: VRM Add-on for Blender, and VRM Converter for VRChat.

VRM Consortium is Participant member of the Metaverse Standards Forum, hosted by the Khronos Group, that provides "a venue for cooperation between standards organizations and companies to foster the development of interoperability standards for an open and inclusive metaverse."

Metaverse and gaming platforms that support VRM models include: Webaverse, VRChat, Monaverse, and Somnium Space.

    Licensing and patents

The VRM format has a VRM Public License 1.0, a unique VRM license accounting for permissions for the personality of the avatar.

License settings for VRM files include modification/redistribution rule for the avatar (configurable from Creative Commons, etc.) and permissions to use the avatar or perform various activities.

Comments welcome.

Transparency

Well defined. The VRM format is written against the glTF 2.0 spec where the glTF represents the entire scene and VRM represents the Humanoid for VR avatar.

The VRM specification describes the savable elements of glTF 2.0 data, the VRM JSON extension part of GLB, as well as the additional VRM extensions defining the model's bone mapping, model information, morph settings, first-person settings, and spring bone settings.

See also glTF 2.0 and JSON.

Comments welcome.

Self-documentation

Some descriptive metadata. The VRM format stores model information in the VRMC_vrm.meta extension. Required properties include name, authors, and licenseURL, with additional optional information about the use conditions of the model, including version, copyright, contact information, distributions, and avatar permissions. See VRM meta properties link for full list with descriptions.

External dependencies

None beyond availability of supporting software. VRM is cross-platform, the same avatar can be used in any application that supports the VRM format.

See notes for information about Capture Hardware for 3D movements.

Comments welcome.

Technical protection considerations

None. Comments welcome.


Quality and functionality factors Explanation of format description terms

Other
3D Model Geometry

See glTF 2.0.

VRM extension VRM.firstPerson.meshAnnotations allows users to switch how the mesh is displayed, adjusting settings for auto, first-person, third-person, and/or both.

3D Model Appearance

See glTF 2.0.

VRM extension VRM.materialProperties saves VRM unique material information and items necessary for Unity.

3D Model Scene

See glTF 2.0.

VRM supports three types of shaders, unlit, standard, and MToon. Unlit and standard are supported by UniGLTF. MToon is a VRM extension used for making anime expressions, mixing Lit Color and Shade Color based on defined parameters and lighting environment.

3D Model Animation

See glTF 2.0.

VRM extension VRM.secondaryAnimation sets the automatic animation of string-like objects, like tails and hair. Users can specify root bones and collider groups of swaying objects and collisions, including drapForce, gravityPower, and stiffness.

VRM.firstPerson.lookAtTypeName extension controls the model's eyes based on the direction form the model's head to the target.


File type signifiers and format identifiers Explanation of format description terms

Tag Value Note
Filename extension vrm
See https://github.com/vrm-c/vrm-specification/blob/master/specification/0.0/README.md#file-extension.
Filename extension glb
The .vrm extension is compatiable with .glb. Per specification, "if ModelFileName.vrm is changed to ModelFileName.glb, it can be loaded by GLTF-compatible applications (however, custom settings in VRM will not be shown)." See https://github.com/vrm-c/vrm-specification/blob/master/specification/0.0/README.md#file-extension. See notes for more information.
Magic numbers HEX: 0x46546C67
For Binary glTF. See specification and IANA registration. No explicit information of VRM Magic Numbers found. Comments welcome.
Pronom PUID See note.  No Pronom PUID as of May 2023.
Wikidata Title ID See note.  No Wikidata entry as of May 2023.

Notes Explanation of format description terms

General

VRM Format and Extension: Saved in .glb format and using .vrm as the extension.

Capture Hardware: example hardware that can be used to capture 3D movements.

  • Video file - some tools do processing offline, so users capture a video file first then load the video file for processing.
  • Leap Motion Capture / Ultraleap - a camera especially designed to capture hand positions.
  • Mocap (motion capture) body suits - contains various sensors to capture how your body moves – these are what profession movie studios use (e.g. rokoko.com). There are also special gloves users can often purchase separately to track individual finger positions.
  • VR equipment (e.g. Oculus or HTC Vive) - the headset, hand controllers, plus additional trackers users can attach to their waist and feet. This is in effect a poor man's mocap suit.
  • Webcam or external USB camera - several tools analyze the video from a webcam to spot key points on the face to track eye movements and facial expressions, some more modern experiences are doing full body position capture backed by AI techniques.
History

VRM Consortium was established as a joint enterprise of 13 Japanese companies in February 2019 with the goal to develop the international virtual reality business with a focus on 3D avatars. The enterprise seeks to advocate for the VRM file format (based on glTF2.0) as the standard file format for 3D human models for virtual reality.

The participating companies range from those focused-on technology to those focused on virtual reality contents. VRM Consortium aims toward further breakthrough in AR/VR markets that utilize 3D avatars and continues to solicit full-members and supporting members in favor of the VRM format and the possibilities it stands for.


Format specifications Explanation of format description terms


Useful references

URLs


Last Updated: 05/18/2023