UniVRM is a robust Unity plugin designed to simplify the import, export, and real-time use of 3D humanoid avatars using the VRM standard. Built on the glTF 2.0 framework, UniVRM ensures cross-platform compatibility and efficient handling of 3D model data, making it a vital tool for developers in the fields of virtual reality, gaming, and digital content creation.
Understanding the formats supported by UniVRM is essential for ensuring smooth integration, model performance, and feature access. This article outlines the file types UniVRM can process and highlights their respective roles in modern avatar-based workflows.
VRM 1.0 (.vrm)
Description of VRM 1.0 Specification
VRM 1.0 is the latest evolution of the VRM file specification, which is based on glTF 2.0. It was developed to address limitations found in earlier versions while expanding functionality to support modern application requirements. VRM 1.0 is engineered with improved modularity, data integrity, and extended support for expressive features, including detailed metadata, blend shape groups, and look-at behavior customization.
Key Features
- Improved Metadata Structure: Allows detailed descriptions, licensing, and author attribution embedded directly within the file.
- Enhanced Blend Shapes: More granular control over facial expressions and morph targets.
- Look-At Support: Customizable eye tracking and head movement options.
- Security Improvements: Restricts potentially unsafe components such as external scripts and shaders.
- Humanoid Bone Mapping: Conforms to Unity’s humanoid rigging system.
- PBR Material Support: Accurate rendering using Physically Based Rendering materials.
Ideal Use Cases
VRM 1.0 is the preferred choice for:
- Cross-platform applications (Unity Editor, Android, iOS, WebGL)
- Projects requiring rich expression and behavior customization
- Live streaming avatars (VTubers)
- Metaverse and multiplayer online experiences
- Applications that demand future-proof and standardized avatar formats
VRM 0.x (.vrm)
Description
VRM 0.x is the original version of the VRM specification and was widely adopted during the early growth of the VTuber and virtual avatar ecosystem. Though now considered legacy, it remains in use across various platforms due to its simplicity and established tooling.
Continued Support
UniVRM continues to support VRM 0.x files to ensure backward compatibility. This ensures that creators can still use or update their existing models without needing to rebuild from scratch.
Migration to VRM 1.0
UniVRM includes automatic migration tools that convert VRM 0.x files to VRM 1.0. This process adjusts bone mapping, reconfigures blend shapes, and updates metadata fields to comply with the new specification.
Suitable Scenarios
- Legacy VTuber projects
- Updating older avatars for compatibility with modern applications
- Testing and prototyping with simple models
glTF 2.0 (.gltf / .glb / .zip)
Overview
glTF 2.0 (GL Transmission Format) is an open-source 3D file format developed by the Khronos Group. It is the foundational structure upon which the VRM format is built. glTF is optimized for runtime performance and compact file size.
Supported Variants
- .gltf (JSON): Human-readable format useful for editing and inspection.
- .glb (Binary): Compact, faster to load, and ideal for real-time applications.
- .zip: Bundled archives that may include textures, shaders, and meshes.
Features
- Mesh and Animation Support: Ideal for static objects and animated sequences.
- Material Definition: Supports PBR materials for realistic shading.
- Extensibility: Allows custom extensions for additional functionality.
Use Cases
- Importing generic 3D models
- Incorporating non-humanoid characters
- Loading environment assets or props
- Intermediate formats for avatar creation pipelines
VRM Animation (.vrma)
Description
VRM Animation (.vrma) is a supplementary format developed to store and transfer motion data, such as facial expressions, gestures, and body movements. It enables creators to create modular, reusable animation sequences that can be applied to any compatible VRM 1.0 model.
Functional Highlights
- Facial and Body Animation: Captures expressions, gestures, and emotional nuances.
- Modular Integration: Combine different animations at runtime.
- Efficient Playback: Optimized for real-time applications such as VR or live streaming.
- Custom Clip Definitions: Define the start, end, and behavior of specific animations.
Ideal Applications
- Real-time avatar animation in streaming or VR platforms
- Dynamic behavior customization
- Interactive storytelling and character interaction
- Lightweight runtime animation for mobile and WebGL
Platform and Use Case Compatibility
UniVRM’s supported formats are optimized for deployment across multiple platforms. Each file type presents unique advantages depending on the environment and performance constraints.
Unity Editor
- Full editing capabilities with support for all formats
- Preview, animate, and configure models
- Import/export VRM and glTF seamlessly
Mobile (Android/iOS)
- VRM 1.0 and .vrma recommended for compact and secure data
- Use .glb for low-latency loading of static models
- Avoid complex shader setups to preserve performance
WebGL
- Support for lightweight formats such as .glb and .vrma
- Runtime model loading with async/await APIs
- Streamlined deployment using AssetBundles or direct file references
VR/AR Applications
- VRM 1.0 for expressive avatars
- .vrma for real-time gesture and expression playback
- glTF assets for interactive environments
VTubing and Streaming
- Real-time avatar control using VRM 1.0
- Animation layering with .vrma
- Blend shape customization and head/eye movement
Game Development
- glTF for environmental elements and props
- VRM 1.0 for characters with humanoid rigs
- Runtime animation with .vrma for interactivity
Format Conversion and Migration Support
Automatic Conversion Tools
UniVRM provides built-in tools to upgrade VRM 0.x files to the 1.0 specification. These tools are available directly within the Unity Editor, ensuring a smooth transition for existing assets.
Conversion Workflow
- Import VRM 0.x file
- UniVRM parses and validates model structure
- Bone mappings are reconfigured
- Metadata is updated to VRM 1.0 schema
- Output a new VRM 1.0-compliant file
Data Integrity Handling
- Bone Structure: Auto-mapped to Unity’s humanoid rig format
- Materials and Shaders: Converted or preserved based on compatibility
- Blend Shapes: Updated and grouped using VRM 1.0 rules
- Look-At Behavior: Default configurations applied
Cross-Platform Readiness
Converted files adhere to modern VRM standards, enabling usage across various engines, devices, and runtime contexts without further modification.
Best Practices for Choosing a Format
When to Use VRM 1.0
- For new avatar projects targeting Unity, WebGL, or mobile
- When detailed expressions, metadata, and eye/head movement are required
- If modular animation support (.vrma) is needed
- For secure distribution of avatar files
When to Use VRM 0.x
- When maintaining legacy content or older VTuber projects
- If the target platform or toolchain does not yet support VRM 1.0
- For internal prototyping and concept validation
When to Use glTF
- For non-humanoid 3D assets (e.g., props, environments)
- When importing or exporting from external 3D tools (Blender, Maya)
- To optimize runtime performance using .glb
- For use in systems that do not support VRM but require standard 3D formats
When to Use .vrma
- For real-time avatar animation without embedding motion in the base model
- To create a modular library of facial expressions or gestures
- For streaming and broadcasting platforms needing dynamic motion triggers
- When reducing file size and animation overhead in runtime applications
Conclusion
UniVRM stands out as a versatile and robust solution for avatar development in Unity. Its support for multiple formats—VRM 1.0, VRM 0.x, glTF 2.0, and VRM Animation—ensures that creators have the flexibility to design, animate, and deploy avatars across a wide spectrum of applications.
VRM 1.0 offers the most comprehensive set of features, while VRM 0.x remains essential for legacy compatibility. glTF provides a standardized way to incorporate auxiliary assets, and .vrma opens new possibilities for real-time, modular animation control.