Útmutató · Unity · Godot 4 · three.js
Használd a fejedet Unityben, Godotban vagy three.js-ben.
A FaceNinja-fej egyszerű GLB vagy FBX MetaHuman-topológiában, szemekkel, fogakkal, 4K textúrákkal és az 52 ARKit blendshape-pel, így az Unrealen kívül is működik. Így hozod be a Unitybe, a Godot 4-be és a three.js-be, és így mozgatod az arcot kódból.
Közzétéve

jawOpen és a két mouthSmile shape-pel. Képernyőkép a saját tesztoldalunkról.Melyik fájl melyik motorhoz
| Motor | Fájl | Mértékegység |
|---|---|---|
| Unity | FBX ARKit shape-ekkel | Centiméter; a Unity méterre váltja |
| Godot 4 | GLB ARKit shape-ekkel | Méter, Y felfelé |
| three.js | GLB ARKit shape-ekkel | Méter, Y felfelé |
Mindkettő életnagyságú. A haj nincs benne a GLB-ben és az FBX-ben: az Unrealben a MetaHuman groomok pótolják, más motorokban adj hozzá saját hajat.
Használhatok MetaHumant Unityben?
A FaceNinja-fej a saját fájlod, MetaHuman-topológiában, a mi feltételeink szerint: bármely motorban használhatod. A MetaHuman Creatorban épített MetaHuman az Epic licence alá tartozik, amely 2025 júniusa óta más motorokat és eszközöket is megenged (az Epic licencoldala).
Unity: az FBX importálása
Hozd be az FBX-et
Töltsd le az ARKit shape-ekkel ellátott FBX-et, és húzd be a projekted Assets mappájába.
Ellenőrizd az importbeállításokat
A Model fülön hagyd bekapcsolva a Convert Units opciót, hogy a centiméterből méter legyen, és az Import BlendShapes opciót (ez az alapértelmezés). Nyomd meg az Apply gombot.
Bontsd ki az anyagokat
A Materials fülön bontsd ki (Extract) a textúrákat és az anyagokat, hogy szerkeszthesd őket. URP-ben vagy HDRP-ben alakítsd át az anyagokat a pipeline Lit shaderére.
Keresd meg a shape-eket
Tedd a fejet egy jelenetbe. A Skinned Mesh Renderer a BlendShapes alatt sorolja fel az 52 shape-et, az ARKit shape-ek nevével.
Vezéreld őket kódból
A Unityben a súlyok 0-tól 100-ig terjednek.
Kód// 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);
Inkább GLB? A Unity egy glTF-importáló csomaggal olvassa, például a glTFast-tal.
Godot 4: a GLB importálása
Hozd be a GLB-t
Töltsd le az ARKit shape-ekkel ellátott GLB-t, és másold be a projektedbe. A Godot jelenetként importálja, méterben.
Keresd meg a shape-eket
Nyisd meg a jelenetet, és jelöld ki a fej MeshInstance3D csomópontját. Az Inspector a Blend Shapes alatt az ARKit-nevükkel sorolja fel a blend shape-eket.
Vezéreld őket kódból
A Godotban a súlyok 0-tól 1-ig terjednek.
Kód# 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: a GLB betöltése
Töltsd be a GLTFLoaderrel
A fej több hálóként nyílik meg (bőr, szemek, fogak és így tovább); mindegyik ugyanazt az 52 shape-nevet hordozza.
Állítsd a shape-eket név szerint
A
morphTargetDictionaryminden ARKit-nevet a hozzá tartozómorphTargetInfluences-indexhez rendel; a súlyok 0-tól 1-ig terjednek.Kód// 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);Tiszta szemek
A three.js-ben tiszta, tükröződő szemekhez töltsd le a fájlt a
cornea=transmissionbeállítással, vagy cseréld le a szaruhártya anyagait betöltéskor (dokumentáció EN).
Ehhez az útmutatóhoz betöltöttük ennek a mintának a GLB-jét a three.js-be: 6 hálóként nyílik meg, és mindegyik felsorolja mind az 52 ARKit-nevet.
Jó tudni
- Ugyanaz a háló, ugyanaz a rig. Minden fejnek ugyanaz a vertexsorrendje és UV-kiosztása, így az egy fejhez készített beállítás mindegyiken működik.
- Lépték. Minden fájl életnagyságú. A
measuredletöltési beállítás a fejet a személy becsült méretére skálázza. - Könnyebb fájlok. Kérj 2K textúrákat a
texture_sizeletöltési beállítással, ha a 4K több a szükségesnél. - A webes előnézet nem motorokhoz való. A GLB-t vagy az FBX-et használd, ne a webalkalmazásban látható tömörített előnézetet.
Kérdések: fejek Unityben, Godotban és three.js-ben
- 01Használhatok MetaHumant Unityben?
- A FaceNinja-fej egyszerű FBX vagy GLB, tehát igen. A MetaHuman Creatorban épített teljes MetaHuman 2025 júniusa óta az Epic licence alapján más motorokban is használható; nézd meg a feltételeit.
- 02Az 52 blendshape is bekerül?
- Igen, az ARKit-nevükkel: Unityben BlendShapes a Skinned Mesh Rendereren, Godotban Blend Shapes a MeshInstance3D-n, three.js-ben pedig morph targetek.
- 03Van haj?
- Ezekben a fájlokban nincs. Az Unrealben a MetaHuman groomok adják; más motorokban adj hozzá saját hajat.
- 04Melyik formátum kisebb?
- Az ARKit shape-es GLB 4K textúrákkal körülbelül 105 MB, a statikus GLB körülbelül 65 MB. 2K textúrákkal mindkettő kisebb.
Kipróbálhatok egy fejet mind az 52 shape-pel?
Igen. Regisztrálj ingyen, és töltsd le a 20 mintafejet: minden GLB-ben és FBX-ben mind az 52 megvan.