Guía · Unity · Godot 4 · three.js
Usa tu cabeza en Unity, Godot o three.js.
Una cabeza FaceNinja es un GLB o FBX normal con topología MetaHuman, con ojos, dientes, texturas 4K y los 52 blendshapes ARKit, así que también funciona fuera de Unreal. Así se lleva a Unity, Godot 4 y three.js, y así se mueve la cara desde código.
Publicado

jawOpen y las dos formas mouthSmile activadas. Captura de nuestra propia página de pruebas.Qué archivo para cada motor
| Motor | Archivo | Unidades |
|---|---|---|
| Unity | FBX con formas ARKit | Centímetros; Unity los convierte a metros |
| Godot 4 | GLB con formas ARKit | Metros, eje Y hacia arriba |
| three.js | GLB con formas ARKit | Metros, eje Y hacia arriba |
Ambos están a tamaño real. El pelo no está en el GLB ni en el FBX: en Unreal lo ponen los grooms de MetaHuman; en otros motores, añade tu propio pelo.
¿Puedo usar un MetaHuman en Unity?
Una cabeza FaceNinja es tu propio archivo, con topología MetaHuman, bajo nuestros términos: úsala en cualquier motor. Un MetaHuman que creas en MetaHuman Creator queda bajo la licencia de Epic, que desde junio de 2025 también permite otros motores y herramientas (página de la licencia de Epic).
Unity: importa el FBX
Trae el FBX
Descarga el FBX con formas ARKit y suéltalo en la carpeta Assets de tu proyecto.
Revisa los ajustes de importación
En la pestaña Model, deja Convert Units activado, para que los centímetros pasen a metros, e Import BlendShapes activado (por defecto). Pulsa Apply.
Extrae los materiales
En la pestaña Materials, extrae las texturas y los materiales para poder editarlos. En URP o HDRP, convierte los materiales al shader Lit del pipeline.
Encuentra las formas
Coloca la cabeza en una escena. El Skinned Mesh Renderer muestra las 52 formas en BlendShapes, con los nombres de las formas ARKit.
Muévelas desde código
En Unity, los pesos van de 0 a 100.
Código// Unity (C#): the head's SkinnedMeshRenderer; Unity blend shape weights run 0–100 var smr = GetComponentInChildren<SkinnedMeshRenderer>(); var mesh = smr.sharedMesh; for (int i = 0; i < mesh.blendShapeCount; i++) if (mesh.GetBlendShapeName(i).EndsWith("jawOpen")) smr.SetBlendShapeWeight(i, 60f);
¿Prefieres GLB? Unity lo lee con un paquete importador de glTF, como glTFast.
Godot 4: importa el GLB
Trae el GLB
Descarga el GLB con formas ARKit y cópialo en tu proyecto. Godot lo importa como escena, en metros.
Encuentra las formas
Abre la escena y selecciona el MeshInstance3D de la cabeza. El Inspector muestra las blend shapes con sus nombres ARKit en Blend Shapes.
Muévelas desde código
En Godot, los pesos van de 0 a 1.
Código# Godot 4 (GDScript): the head's MeshInstance3D; weights run 0–1 @onready var head: MeshInstance3D = $Head func _ready(): var i := head.find_blend_shape_by_name("jawOpen") if i >= 0: head.set_blend_shape_value(i, 0.6)
three.js: carga el GLB
Cárgalo con GLTFLoader
La cabeza se abre como varias mallas (piel, ojos, dientes, etc.); cada una lleva los mismos 52 nombres de formas.
Ajusta las formas por nombre
morphTargetDictionaryasigna a cada nombre ARKit su índice enmorphTargetInfluences; los pesos van de 0 a 1.Código// three.js: every mesh of the head carries the same 52 names; weights run 0–1 import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js'; const gltf = await new GLTFLoader().loadAsync('head.glb'); gltf.scene.traverse((o) => { const i = o.morphTargetDictionary?.jawOpen; if (i !== undefined) o.morphTargetInfluences[i] = 0.6; }); scene.add(gltf.scene);Ojos transparentes
Para unos ojos transparentes y con reflejos en three.js, descarga con la opción
cornea=transmission, o cambia los materiales de la córnea al cargar el archivo (docs EN).
Cargamos el GLB de esta muestra en three.js para esta guía: se abre como 6 mallas, y cada una enumera los 52 nombres ARKit.
Conviene saber
- La misma malla, el mismo rig. Todas las cabezas tienen el mismo orden de vértices y las mismas UV, así que lo que configures para una cabeza sirve para todas.
- Escala. Todos los archivos están a tamaño real. La opción de descarga
measuredescala una cabeza a una estimación del tamaño de la persona. - Archivos más ligeros. Pide texturas 2K con la opción de descarga
texture_sizecuando 4K sea más de lo que necesitas. - La vista previa web no es para motores. Usa el GLB o el FBX, no la vista previa comprimida que muestra la aplicación web.
Preguntas sobre cabezas en Unity, Godot y three.js
- 01¿Puedo usar un MetaHuman en Unity?
- Una cabeza FaceNinja es un FBX o GLB normal, así que sí. Un MetaHuman completo creado en MetaHuman Creator también puede usarse en otros motores bajo la licencia de Epic desde junio de 2025; revisa sus condiciones.
- 02¿Se importan los 52 blendshapes?
- Sí, con sus nombres ARKit: como BlendShapes en el Skinned Mesh Renderer en Unity, Blend Shapes en el MeshInstance3D en Godot y morph targets en three.js.
- 03¿Hay pelo?
- No en estos archivos. En Unreal lo ponen los grooms de MetaHuman; en otros motores, añade tu propio pelo.
- 04¿Qué formato ocupa menos?
- El GLB con formas ARKit ocupa unos 105 MB con texturas 4K, y el GLB estático unos 65 MB. Con texturas 2K, ambos ocupan menos.
¿Puedo probar una cabeza con los 52 blendshapes?
Sí. Regístrate gratis y descarga las 20 cabezas de muestra: cada GLB y FBX tiene los 52.