Ghid · Unity · Godot 4 · three.js
Folosiți capul în Unity, Godot sau three.js.
Un cap FaceNinja este un simplu GLB sau FBX în topologie MetaHuman, cu ochi, dinți, texturi 4K și cele 52 de blendshape-uri ARKit, așa că funcționează și în afara Unreal. Iată cum îl aduceți în Unity, Godot 4 și three.js și cum mișcați fața din cod.
Publicat

jawOpen și cele două forme mouthSmile activate. Captură de ecran din propria noastră pagină de test.Ce fișier pentru ce engine
| Engine | Fișier | Unități |
|---|---|---|
| Unity | FBX cu forme ARKit | Centimetri; Unity îi convertește în metri |
| Godot 4 | GLB cu forme ARKit | Metri, Y în sus |
| three.js | GLB cu forme ARKit | Metri, Y în sus |
Ambele sunt la mărime naturală. Părul nu este în GLB sau FBX: în Unreal îl înlocuiesc groom-urile MetaHuman; în alte engine-uri, adăugați propriul păr.
Pot folosi un MetaHuman în Unity?
Un cap FaceNinja este fișierul dumneavoastră, în topologie MetaHuman, conform termenilor noștri: folosiți-l în orice engine. Un MetaHuman construit în MetaHuman Creator intră sub licența Epic, care din iunie 2025 permite și alte engine-uri și unelte (pagina de licență Epic).
Unity: importați FBX-ul
Aduceți FBX-ul
Descărcați FBX-ul cu forme ARKit și puneți-l în folderul Assets al proiectului.
Verificați setările de import
În fila Model, lăsați Convert Units activat, ca centimetrii să devină metri, și Import BlendShapes activat (implicit). Apăsați Apply.
Extrageți materialele
În fila Materials, extrageți texturile și materialele ca să le puteți edita. În URP sau HDRP, convertiți materialele la shaderul Lit al pipeline-ului.
Găsiți formele
Puneți capul într-o scenă. Skinned Mesh Renderer listează cele 52 de forme sub BlendShapes, numite după formele ARKit.
Controlați-le din cod
În Unity, ponderile merg de la 0 la 100.
Cod// 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);
Preferați GLB? Unity îl citește cu un pachet de import glTF, precum glTFast.
Godot 4: importați GLB-ul
Aduceți GLB-ul
Descărcați GLB-ul cu forme ARKit și copiați-l în proiect. Godot îl importă ca scenă, în metri.
Găsiți formele
Deschideți scena și selectați MeshInstance3D-ul capului. Inspector listează blend shapes după numele ARKit, sub Blend Shapes.
Controlați-le din cod
În Godot, ponderile merg de la 0 la 1.
Cod# 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: încărcați GLB-ul
Încărcați-l cu GLTFLoader
Capul se deschide ca mai multe mesh-uri (piele, ochi, dinți etc.); fiecare poartă aceleași 52 de nume de forme.
Setați formele după nume
morphTargetDictionaryasociază fiecare nume ARKit cu indexul său dinmorphTargetInfluences; ponderile merg de la 0 la 1.Cod// 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);Ochi clari
Pentru ochi clari, care reflectă lumina, în three.js, descărcați cu opțiunea
cornea=transmissionsau înlocuiți materialele corneei când încărcați fișierul (documentație EN).
Am încărcat GLB-ul acestui exemplu în three.js pentru acest ghid: se deschide ca 6 mesh-uri și fiecare listează toate cele 52 de nume ARKit.
Bine de știut
- Același mesh, același rig. Fiecare cap are aceeași ordine a vertex-urilor și aceleași UV-uri, așa că o configurare făcută pentru un cap funcționează pentru toate.
- Scară. Fiecare fișier este la mărime naturală. Opțiunea de descărcare
measuredscalează un cap la o estimare a dimensiunii persoanei. - Fișiere mai ușoare. Cereți texturi 2K cu opțiunea de descărcare
texture_sizecând 4K este mai mult decât aveți nevoie. - Previzualizarea web nu este pentru engine-uri. Folosiți GLB-ul sau FBX-ul, nu previzualizarea comprimată pe care o arată aplicația web.
Întrebări despre capete în Unity, Godot și three.js
- 01Pot folosi un MetaHuman în Unity?
- Un cap FaceNinja este un simplu FBX sau GLB, deci da. Din iunie 2025, și un MetaHuman complet construit în MetaHuman Creator poate fi folosit în alte engine-uri, conform licenței Epic; verificați termenii acesteia.
- 02Se importă și cele 52 de blendshape-uri?
- Da, cu numele lor ARKit: ca BlendShapes pe Skinned Mesh Renderer în Unity, Blend Shapes pe MeshInstance3D în Godot și morph targets în three.js.
- 03Există păr?
- Nu în aceste fișiere. În Unreal îl asigură groom-urile MetaHuman; în alte engine-uri, adăugați propriul păr.
- 04Ce format este mai mic?
- GLB-ul cu forme ARKit are aproximativ 105 MB cu texturi 4K, iar GLB-ul static aproximativ 65 MB. Texturile 2K le micșorează pe amândouă.
Pot încerca un cap cu toate cele 52 de forme?
Da. Creați un cont gratuit și descărcați cele 20 de capete de exemplu: fiecare GLB și FBX le are pe toate cele 52.