This subpage specifically talks about 3D VTuber models and 3D VTubing software. Visit the main page for more general information regarding VTubing.
3D VTubing can be fairly complex as it sits at a crossroads between motion capture, game development standards, and virtual reality. In theory any 3D character with a degree of user control could be used for 3D VTubing in practice, such as in early Machinima, but generally we think of 3D VTubers as avatars that support VRM standard, used in a compatible application. Despite the models sharing a standard, the methods used to manipulate each model and their environment can vary drastically. Tracking is generally handled separately, so the main appeal to picking a 3D Vtubing App can be in their tracking support or other features.
Below is an incomplete list of some notable 3D Vtuber Apps and their differences. Note that since these apps support VMC Sending and Receiving, they can be used in tandem. For example you can use VSeeFace’s motion and send it to Warudo, although it would be redundant since they both support OpenSeeFace as underlying tracking solutions.
| 3D Vtubing App | Tracking Solutions | Features | Monetization | Other Notes |
|---|---|---|---|---|
| VSeeFace | OpenSeeFace, and others using VMC. | Unity SDK | Free | Has its own SDK to create VSFAvatar models, which can be useful for advanced toggles. |
| Warudo (https://warudo.app/) | Webcam (via OpenSeeFace and Mediapipe), iPhone (via IFacialMocap and RhyLive), Leap Motion, Mocopi, SteamVR, Rokoko, Xsens MVN, Virdyn Studio, Noitom Axis, and others using VMC and Steam Workshop addons. | 3D Environments, Visual Scripting, Custom Scripting Support, Unity SDK, Steam Workshop Support for addons and assets, Integration with livestreaming platforms (Twitch, Youtube, BiliBili, Douyin), etc. | Free Version and Pro. Pro is not publicly available and is instead designed and required for Corporate users. Most notable Pro Features are URP Rendering and NiloToon Shaders. | Has its own SDK to create .warudo character files instead of .vrm ones, which can be useful for advanced toggles. |
| XR Animator | ||||
| VNyan ( VNyan by Suvidriel ) | and others using VMC. | 3D Environments, Visual Scripting, | Free (Name your Price via Itch) | Has its own SDK (VNyan SDK · Suvidriel/VNyanDoc Wiki · GitHub). Compatible with VSFAvatar models. |
The VRM standard, found in .vrm character files, are supported by a wide range of programs which are typically based in Unity, although it is possible to support these models in other game engines and even on the web. VRM models are typically made in Unity using the official UniVRM unity package.
Other 3D standards exist which can be used in addition to VRM, such as Apple’s ARKIT Expressions and MMD. A VRM model can utilize ARKIT as an alternative to standard VRM expressions, as long as the program performing the tracking supports it.
Many VRM compatible programs can communicate using the OSC/VMC Protocol, which allows them to share and send data across platforms. This can be utilized to use VRM in your own projects, in which case it may be useful to use an existing Receiver addon for your program of choice. These receivers can be connected to a program that handles the tracking for you, which may be useful if you wish to create your own VTubing Suite.
Below is a list of VMC Protocol receivers, containing information compiled from a page on the VMC Protocol website.
- EVMC4U is a Unity Package used to receive VMC protocol data. It also requires UniVRM and uOSC. Recommended versions are included in the install.
- Certain versions of UniVRM are known to have issues regarding legacy blendshapes, causing distortion and displacement for expressions. If you encounter these issues, it might be useful to try a safe older version such as
release v0.112.0, even if this version is older than the one included in the recommended install of EVMC4U.
- Certain versions of UniVRM are known to have issues regarding legacy blendshapes, causing distortion and displacement for expressions. If you encounter these issues, it might be useful to try a safe older version such as
- Unreal Engine support requires VRM4U for handling VRM files, VMC4UE as a receiver for VMC protocol data, and ueOSC to handle OSC signals.
- Godot can support VMC using GodotXRVMCTracker.
- https://tonimono-booth-pm.translate.goog/items/3432915?\_x_tr_sl=ja&\_x_tr_tl=en&\_x_tr_hl=ja&\_x_tr_pto=wapp (paid)