Your file never leaves this page. There is no upload: the file is read into memory, analyzed by WebAssembly locally, and forgotten on reload. Nothing is sent to any server — this site is static hosting.

Analyze a file

Drop a binary .fbx here, or click to choose a file
Textures not embedded in the file? Drop the image files or the folder next to the .fbx too — before or after.
Loading analyzer…

What it checks

  • 3D preview — the meshes are drawn from the file's raw control points and auto-uprighted (hips→head) exactly as avatar render does, with the skeleton, a wireframe / UV / skin-weight / normals view, and click-to-select bones that stay in sync with the rig tree. See rendering & preview for why raw control points (not the per-cluster bind matrices) are the faithful choice for ripped/MMD-derived avatars.
  • Textures — embedded images are decoded straight out of the FBX (PNG/JPEG/BMP/TGA). Most Blender and MMD exports instead reference their images by path; drop those files (or the folder that holds them) onto the page and they are matched to the materials by filename — extension mismatches like a .tga reference with a .png on disk are tolerated. The Textures tab lists every reference, where it was resolved from, its size, and whether it uses alpha.
  • Overview — the headline numbers (humanoid-ready, PC and Android rank, triangles, bones, materials, blendshapes) and one aggregated issues list: missing or duplicate humanoid bones, extra skeleton roots, a unit scale other than 100 or a non-Y up axis in the file's global settings, meshes with no material, and so on — each with a plain-language explanation of what Unity or VRChat will do about it.
  • Humanoid rig — infers the Unity humanoid mapping from the bone hierarchy and validates it against VRChat's rig requirements: required + recommended bones, duplicate mappings, stray skeleton roots. Shown as a collapsible bone tree with the humanoid slot on every mapped bone, plus a checklist of the 25 humanoid slots. See humanoid bones and armature repair for what the CLI can then fix.
  • Performance rank — VRChat's Excellent→Very Poor rank computed offline from the geometry (triangles, meshes, bones, material slots), drawn as meters against the PC and Android limit tables so you can see how far a metric is from the next tier. See performance stats.
  • Meshes & materials — per-mesh vertex/triangle counts, skinning and the bones that influence it; per-material diffuse colour and the embedded texture (decoded in the browser, with its dimensions and the path the FBX references).
  • Blendshapes — every blendshape channel grouped by mesh, with the fifteen VRChat visemes as a checklist (the same cross-check avatar lint runs against a descriptor's viseme setup), blink shapes, expression shapes, and a search filter.
  • Raw JSON — the full report, the same shape as avatar describe --json, downloadable as a file.

Only binary FBX 7.x is supported (the Autodesk / Unity / Blender default export) — ASCII FBX must be re-exported as binary. Project-level checks (descriptor, animators, menus, the SDK3 lint rules) need a full Unity project tree, so those stay on the CLI: avatar lint.