Characters converted from PMX to VRM

PMX to VRM Pipeline

Drop a ZIP, get a UE-ready VRM

Python · TypeScript · glTF 2.0 — Company, 2026

Problem

We needed to bring PMX characters from Booth/community into the project, but there was no way to convert PMX to UE-compatible VRM. Manual conversion broke bone mappings, lost physics on hair/skirts, and corrupted textures, completely changing the look. The MMD Player was built as a source verifier for this pipeline.

Solution

An automated PMX to glTF to VRM conversion pipeline. Drop in a ZIP, get a UE-ready VRM out. The key requirement was preserving physics (hair, skirt, ribbon) and material look without breaking them.

Pipeline Flow

ZIP → PMX Parse → glTF Build → VRM Output
Tool User Method
Python CLITA / Batch jobsBatch-convert multiple models at once
Next.js Web AppAnyone on the teamUpload ZIP in browser, download VRM
Browser SPAExternal / No serverClient-only conversion
pmx2vrm Web App — ZIP Upload to VRM Conversion + 6-Layer Validation

Web app — ZIP in, VRM out

Result

Category Result
Conversion Rate90% success on major game PMX (HoYoverse, Eternal Return, Cyphers, etc.)
Model CoverageBoth Japanese and Chinese PMX supported
Conversion Speed393ms (Saber.pmx, 28K vertices)
Before (Star Rail PMX) / After (VRM conversion result)

Left: Original game screenshot — Right: Viewer rendering after PMX to VRM conversion

← MMD Player Live UE Scene Bridge →