Character Factory is a free, open-source, locally-run text-to-3D character pipeline. Prompt in, rigged character out.

A retired astronomy professor, tweed waistcoat, round spectacles, white beard
1 / 6
“A retired astronomy professor, tweed waistcoat, round spectacles, white beard”
A Nigerian marathon runner mid-career, shaved head, racing singlet and shorts
2 / 6
“A Nigerian marathon runner mid-career, shaved head, racing singlet and shorts”
A young female Japanese street courier, undercut with dyed teal tips, cropped windbreaker
3 / 6
“A young female Japanese street courier, undercut with dyed teal tips, cropped windbreaker”
An Afro-Caribbean bartender, locs tied back, rolled-sleeve shirt and vest
4 / 6
“An Afro-Caribbean bartender, locs tied back, rolled-sleeve shirt and vest”
A tall Scandinavian nurse, blonde hair, scrub top
5 / 6
“A tall Scandinavian nurse, blonde hair, scrub top”
An Indian grandmother, silver hair in a tight bun, fitted knit cardigan
6 / 6
“An Indian grandmother, silver hair in a tight bun, fitted knit cardigan”

Quickstart

pip install "character-factory[generation]"
character-factory make "A retired astronomy professor, tweed waistcoat, round spectacles, white beard" -o professor

First run downloads 36.4 GB of model weights. After that, generation is local and offline.

$ character-factory make "A retired astronomy professor, tweed waistcoat, round spectacles, white beard" -o professor
create      80.9 s
bake       131.2 s
assemble     4.6 s
professor/character.char.json
professor/scene.glb

Use it with your coding agent

Paste this into Claude Code, Codex, or any coding agent.

Set up Character Factory (NVIDIA GPU, 24 GB):
1. pip install "character-factory[generation,server]"
2. character-factory make "<description>" -o <dir>
   Writes <dir>/character.char.json and <dir>/scene.glb; stdout is exactly those two paths.
   Interpreter: Qwen3.5-9B, local by default (Apache-2.0, ungated — no token, no account).
   First run downloads 36.4 GB of model weights.
Optional:
- MCP: pip install "character-factory[mcp]"; add `character-factory mcp` to the agent's MCP config.
- Unity 6000.0+: character-factory serve; add
  "com.character-factory.unity": "https://github.com/character-factory/character-factory-unity.git"
  to Packages/manifest.json; then unity cmd cf-create --prompt "<description>" --walking true --json
  and unity cmd cf-verify --target "<name>" --json.

Source of truth: https://raw.githubusercontent.com/character-factory/character-factory/main/README.md

Or:

Build a character-driven game using https://characterfactory.ai

No additional API key or account required.

Comparison

Character Factory MetaHuman Meshy MakeHuman
Use case Agent-built game characters AAA photoreal humans Generative 3D meshes Open-source human authoring
Create with Text prompt Presets & sculpting Text / image prompt Sliders / Blender
Cost / license Free · Apache-2.0 Free¹ · proprietary Freemium · proprietary Free · open source
Offline Yes Partly No Yes
Agent end-to-end Yes · CLI / HTTP API / MCP / JSON Partial · Unreal Python Yes · CLI / API / MCP Partial · Python
Character standard Fixed topology, rig & face Standard rig; assets vary One-off generated mesh Standard body; assets vary
Clothing Generated from prompt² Wardrobe / custom assets Baked into mesh Asset library
Stored as Few-KB JSON³ Unreal assets Generated mesh Preset + assets
Runtime target Fixed · web / mobile / VR LOD-dependent Generation-dependent Asset-dependent
Fidelity Stylized-realistic Photoreal Variable Realistic / stylized

¹ Subject to Epic's current licensing and revenue terms.

² Garments and shoes are separate generated meshes with their own cloth materials over a skin-only body.

³ Diffable, versionable source document that regenerates the character under pinned versions.

Every character:

Triangles
~15–50k, hair-dependent
Texture size
1024² per surface — skin, eyes, garment, shoes, hair albedo + normal
Rig
127 joints, exact-LBS, 54-bone Unity Humanoid map in the manifest
Blendshapes
72 named facial morphs + jaw
Materials / draw calls
10–11 primitives
Alpha passes
0 — fully opaque by design
GLB size
~1–10 MB
Source document
2–6 KB JSON
Generation time
~1–5 min depending on hardware and settings

Hardware

Generation
NVIDIA GPU, 24 GB recommended — bake measured at 17.4 GB VRAM (bf16) or 8.9 GB (nf4); smaller-card setups in the README
Disk
≈1.1 GB install + 36.4 GB model weights
Assembly & consumption
No GPU — document→GLB runs on CPU