Exports the appearance of a source avatar selected in Play Mode as one self-contained VRM 1.0 file. Open it from Tools > SoulFlame VRM Exporter.
In the VRChat Creator Companion, open https://cucumberworks.github.io/vpm/
and choose Add to VCC. In ALCOM, or in VCC by hand, add the repository
URL https://cucumberworks.github.io/vpm/index.json. Then add SoulFlame VRM
Exporter to the project. In a project with VRM 0.x (for example from VRM
Converter for VRChat), or with UniVRM imported under Assets/, read
UniVRM first. Pre-release versions, such as 0.1.0-beta.1, show
only when pre-release packages are turned on.
If the project already lists the exporter from Add package from disk, remove that entry in the Package Manager first.
The exporter itself never installs or upgrades a package. The Capture tab of the exporter window lists a missing or unsupported package, and Refresh checks again after you change one.
The exporter writes with UniVRM’s VRM 1.0 package, com.vrmc.vrm (shown as
VRM-1.0 in the Package Manager), and the UniGLTF package it builds on,
com.vrmc.gltf (UniGLTF). Both must come from the same
release: 0.125.x, 0.128.1 or a later 0.128 release, or 0.131.2 or a later
0.131 release. The exporter lists both as VPM dependencies, at 0.131.2 or a
later 0.131 release, for the VRChat Creator Companion and ALCOM to add them
along with the exporter. The CucumberWorks listing, which serves the
exporter, serves both at 0.131.2.
If UniVRM was imported under Assets/. UniVRM unitypackages before 0.131
put it in folders such as Assets/UniGLTF, Assets/VRM10, Assets/VRM,
Assets/VRMShaders and Assets/MeshUtility. Remove those folders before
adding the exporter, or two copies of UniGLTF can stop the whole project
compiling.
In a project with VRM 0.x but no VRM 1.0, adding the exporter through VCC or
ALCOM can add VRM 1.0 with it, which makes Unity import every .vrm file
under Assets again (see below). First back up any changes you made to
the prefabs that VRM 0.x built from them.
If the project has VRM Converter for VRChat. VRM Converter installs
UniGLTF and VRM 0.x (com.vrmc.univrm) of one UniVRM release, such as
0.128.1, and VRM 0.x needs exactly that UniGLTF, while this exporter version
lists UniGLTF 0.131 as a VPM dependency. In such a project:
com.vrmc.gltf conflicts with com.vrmc.univrm
when you add or update the exporter, add VRM-1.0 or upgrade all packages
at once (Upgrade All). If it does, answer No (or Cancel). If you already
answered Yes, go back to exporter 0.1.0 in VCC or ALCOM and remove VRM-1.0
there if it stays, then change UniGLTF there back to VRM Converter’s
release, such as 0.128.1.com.vrmc.gltf conflicts with
com.soulflame.vrm-exporter and com.vrmc.vrm. Answer No (or Cancel)
there too. If you already answered Yes, go back to exporter 0.1.0 in VCC
or ALCOM and remove VRM-1.0 there if it stays. Or, to keep this exporter
version without VRM Converter, remove VRM Converter there, then remove VRM
0.x if you also added it on its own. If the project then has no VRM 0.x,
remove the exporter and add it again.If the project already has VRM 0.x but no VRM 1.0, add only the VRM 1.0 package, at the UniGLTF version the project has:
https://github.com/vrm-c/UniVRM.git?path=/Assets/VRM10#v0.125.0, with
your version after #v.https://github.com/vrm-c/UniVRM.git?path=/Packages/VRM10#v0.131.2, with
your version after #v.The two versions must match exactly, patch included. With UniGLTF 0.125 or
0.128, do not import the VRM unitypackage into such a project: it brings a
second copy of UniGLTF. If VRM 0.x came from
UniVRM-0.131.2_a471.unitypackage, you can instead import
VRM-0.131.2_a471.unitypackage from the
UniVRM 0.131.2 release
over it: it keeps UniGLTF as it is and adds VRM 1.0. Where you added the
exporter from disk or by git URL, the Capture tab names the file for the
installed version. When an update later moves UniGLTF to another version,
remove the VRM 1.0 package you added and add it again with the new version.
Until then VRM 1.0 may not compile, and the Capture tab names both
versions; with no writer, Export shows the URL to use. Do not replace a
VRM 1.0 that VCC or ALCOM added with the exporter this way: the VPM client can
put it back the next time it resolves the project. For such a project the
Capture tab gives steps to take in VCC or ALCOM instead. In a project that
needs VRM Converter for VRChat, use exporter 0.1.0, as above.
Adding the VRM 1.0 package makes Unity import every .vrm file under
Assets again, and VRM 0.x rebuilds the prefabs it made from them. Back up
any changes you made to those prefabs first.
If you added the exporter without VCC or ALCOM and the project has no UniVRM. Add both packages of the current release with + > Add package from git URL…, UniGLTF first:
https://github.com/vrm-c/UniVRM.git?path=/Packages/UniGLTF#v0.131.2https://github.com/vrm-c/UniVRM.git?path=/Packages/VRM10#v0.131.2Or import VRM-0.131.2_a471.unitypackage from the
UniVRM 0.131.2 release,
which holds both.
Each of these widens what a capture can convert. They come from their VPM repositories, through the VRChat Creator Companion or ALCOM.
Assets/_PoiyomiShaders. Each material is
checked against its own shader’s release, so materials on the shaders of
those releases that Poiyomi keeps under Old Versions export too, and so
do the 8.x Outline and 8.1 Early Z variants, which hold what 9.x’s Poiyomi
Toon draws from its own settings. Other releases (8.2 was only Poiyomi Pro)
and the Two Pass, Grab Pass, World, Outline Early, Lil Fur and Pro variants
are blocked; such a material can use its basic look instead.The package ships a check page next to its code. Unity does not import it.
After an export, Check in viewer in the exporter window opens the page in your web browser; drop the file onto it as in step 3. To open it yourself:
Demo~ folder and double-click vrm-check.html. It opens in your
web browser and needs an internet connection..vrm file onto the page, or choose it with
Choose file….The page plays sample motions (idle, wave, bow, stretch), plays the file’s expressions, turns the eyes toward the pointer and runs the spring bones. Show spring joints and colliders draws them. The File list shows what the file contains and marks what may need a look, such as missing mouth or blink expressions or an avatar without spring bones.
The sample motions were made for the SoulFlame project and are released under the MIT license.
com.soulflame.vrm-exporter
https://cucumberworks.github.io/vpm/
0.4.2 (Changelog)
2022.3.22f1 or later
No dependencies
No legacy packages