Guida · Unity · Godot 4 · three.js
Usa la tua testa in Unity, Godot o three.js.
Una testa FaceNinja è un normale GLB o FBX su topologia MetaHuman, con occhi, denti, texture 4K e i 52 blendshape ARKit, quindi funziona anche fuori da Unreal. Ecco come portarla in Unity, Godot 4 e three.js, e come muovere il volto dal codice.
Pubblicato

jawOpen e le due forme mouthSmile attivate. Screenshot dalla nostra pagina di test.Quale file per quale motore
| Motore | File | Unità |
|---|---|---|
| Unity | FBX con forme ARKit | Centimetri; Unity li converte in metri |
| Godot 4 | GLB con forme ARKit | Metri, Y in alto |
| three.js | GLB con forme ARKit | Metri, Y in alto |
Entrambi sono a grandezza naturale. I capelli non sono nel GLB né nell'FBX: in Unreal li sostituiscono i groom MetaHuman; negli altri motori, aggiungi capelli tuoi.
Posso usare un MetaHuman in Unity?
Una testa FaceNinja è un tuo file, su topologia MetaHuman, secondo i nostri termini: usala in qualsiasi motore. Un MetaHuman che crei in MetaHuman Creator ricade sotto la licenza di Epic, che da giugno 2025 consente anche altri motori e strumenti (pagina della licenza di Epic).
Unity: importa l'FBX
Porta dentro l'FBX
Scarica l'FBX con forme ARKit e trascinalo nella cartella Assets del progetto.
Controlla le impostazioni di importazione
Nella scheda Model, lascia attivo Convert Units, così i centimetri diventano metri, e attivo Import BlendShapes (il default). Premi Apply.
Estrai i materiali
Nella scheda Materials, estrai texture e materiali per poterli modificare. In URP o HDRP, converti i materiali allo shader Lit della pipeline.
Trova le forme
Metti la testa in una scena. Lo Skinned Mesh Renderer elenca le 52 forme sotto BlendShapes, con i nomi delle forme ARKit.
Guidale dal codice
In Unity i pesi vanno da 0 a 100.
Codice// 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);
Preferisci il GLB? Unity lo legge con un pacchetto di importazione glTF, come glTFast.
Godot 4: importa il GLB
Porta dentro il GLB
Scarica il GLB con forme ARKit e copialo nel progetto. Godot lo importa come scena, in metri.
Trova le forme
Apri la scena e seleziona il MeshInstance3D della testa. L'Inspector elenca le blend shape con i loro nomi ARKit sotto Blend Shapes.
Guidale dal codice
In Godot i pesi vanno da 0 a 1.
Codice# 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: carica il GLB
Caricalo con GLTFLoader
La testa si apre come diverse mesh (pelle, occhi, denti e così via); ognuna porta gli stessi 52 nomi di forme.
Imposta le forme per nome
morphTargetDictionaryassocia ogni nome ARKit al suo indice inmorphTargetInfluences; i pesi vanno da 0 a 1.Codice// 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);Occhi trasparenti
Per occhi trasparenti e riflettenti in three.js, scarica con l'opzione
cornea=transmission, oppure sostituisci i materiali della cornea quando carichi il file (docs EN).
Per questa guida abbiamo caricato il GLB di questo esempio in three.js: si apre come 6 mesh, e ognuna elenca tutti i 52 nomi ARKit.
Buono a sapersi
- Stessa mesh, stesso rig. Ogni testa ha lo stesso ordine dei vertici e le stesse UV, quindi un setup fatto per una testa vale per tutte.
- Scala. Ogni file è a grandezza naturale. L'opzione di download
measuredscala una testa a una stima delle dimensioni della persona. - File più leggeri. Chiedi texture 2K con l'opzione di download
texture_sizequando il 4K è più di quanto ti serve. - L'anteprima web non è per i motori. Usa il GLB o l'FBX, non l'anteprima compressa che mostra l'app web.
Domande sulle teste in Unity, Godot e three.js
- 01Posso usare un MetaHuman in Unity?
- Una testa FaceNinja è un normale FBX o GLB, quindi sì. Anche un MetaHuman completo creato in MetaHuman Creator può essere usato in altri motori con la licenza di Epic da giugno 2025; controlla i suoi termini.
- 02I 52 blendshape vengono importati?
- Sì, con i loro nomi ARKit: come BlendShapes sullo Skinned Mesh Renderer in Unity, Blend Shapes sul MeshInstance3D in Godot e morph target in three.js.
- 03Ci sono i capelli?
- Non in questi file. In Unreal li forniscono i groom MetaHuman; negli altri motori, aggiungi capelli tuoi.
- 04Quale formato è più leggero?
- Il GLB con forme ARKit pesa circa 105 MB con texture 4K, e il GLB statico circa 65 MB. Le texture 2K li rendono entrambi più leggeri.
Posso provare una testa con tutte le 52 forme?
Sì. Registrati gratis e scarica le 20 teste di esempio: ogni GLB e FBX le ha tutte e 52.