FaceNinja

Panduan · Unity · Godot 4 · three.js

Gunakan kepala Anda di Unity, Godot atau three.js.

Kepala FaceNinja adalah GLB atau FBX biasa dengan topologi MetaHuman, mata, gigi, tekstur 4K dan 52 blendshape ARKit, sehingga juga bekerja di luar Unreal. Berikut cara membawanya ke Unity, Godot 4 dan three.js serta menggerakkan wajah dari kode.

Kepala FaceNinja dirender di three.js dengan mulut terbuka tersenyum
Sampel S-16, orang sintetis, dimuat di three.js dari GLB dengan bentuk ARKit, dengan jawOpen dan dua bentuk mouthSmile dinaikkan. Tangkapan layar dari halaman uji kami sendiri.

Berkas yang tepat untuk tiap engine

Berkas per engine
EngineBerkasSatuan
UnityFBX dengan bentuk ARKitSentimeter; Unity mengubahnya menjadi meter
Godot 4GLB dengan bentuk ARKitMeter, sumbu Y ke atas
three.jsGLB dengan bentuk ARKitMeter, sumbu Y ke atas

Keduanya berukuran nyata. Rambut tidak ada di GLB atau FBX: di Unreal, groom MetaHuman menggantikannya; di engine lain, tambahkan rambut sendiri.

Bisakah MetaHuman digunakan di Unity?

Kepala FaceNinja adalah berkas Anda sendiri dengan topologi MetaHuman menurut ketentuan kami: gunakan di engine apa pun. MetaHuman buatan MetaHuman Creator mengikuti lisensi Epic, yang sejak Juni 2025 juga mengizinkan engine dan alat lain (halaman lisensi Epic).

Unity: impor FBX

  1. Masukkan FBX

    Unduh FBX dengan bentuk ARKit dan masukkan ke folder Assets proyek.

  2. Periksa pengaturan impor

    Pada tab Model, biarkan Convert Units aktif agar sentimeter menjadi meter, dan Import BlendShapes aktif (bawaan). Terapkan.

  3. Ekstrak material

    Pada tab Materials, ekstrak tekstur dan material agar dapat diedit. Di URP atau HDRP, konversikan material ke shader Lit pipeline tersebut.

  4. Temukan bentuknya

    Tempatkan kepala dalam adegan. Skinned Mesh Renderer menampilkan 52 bentuk pada BlendShapes dengan nama ARKit.

  5. Kendalikan dari kode

    Bobot di Unity berkisar dari 0 hingga 100.

    Kode
    // 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);

Lebih suka GLB? Unity membacanya dengan paket pengimpor glTF seperti glTFast.

Godot 4: impor GLB

  1. Masukkan GLB

    Unduh GLB dengan bentuk ARKit lalu salin ke proyek. Godot mengimpornya sebagai adegan dalam meter.

  2. Temukan bentuknya

    Buka adegan dan pilih MeshInstance3D kepala. Inspector menampilkan blendshape menurut nama ARKit pada Blend Shapes.

  3. Kendalikan dari kode

    Bobot di Godot berkisar dari 0 hingga 1.

    Kode
    # 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: muat GLB

  1. Muat dengan GLTFLoader

    Kepala dibuka sebagai beberapa mesh (kulit, mata, gigi dan lainnya); masing-masing membawa 52 nama bentuk yang sama.

  2. Atur bentuk menurut nama

    morphTargetDictionary memetakan setiap nama ARKit ke indeksnya dalam morphTargetInfluences; bobot berkisar dari 0 hingga 1.

    Kode
    // 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);
  3. Mata jernih

    Untuk mata jernih dan reflektif di three.js, unduh dengan opsi cornea=transmission, atau ganti material kornea saat memuat berkas (dokumentasi EN).

Kami memuat GLB sampel ini di three.js untuk panduan ini: terbuka sebagai 6 mesh, dan tiap mesh mencantumkan semua 52 nama ARKit.

Perlu diketahui

  • Mesh sama, rig sama. Tiap kepala memiliki urutan verteks dan UV yang sama sehingga pengaturan satu kepala bekerja untuk semuanya.
  • Skala. Semua berkas berukuran nyata. Opsi unduh measured mengatur skala menurut perkiraan ukuran orang tersebut.
  • Berkas lebih ringan. Minta tekstur 2K lewat opsi unduh texture_size saat 4K berlebihan.
  • Pratinjau web bukan untuk engine. Gunakan GLB atau FBX, bukan pratinjau terkompresi dalam aplikasi web.

Pertanyaan tentang kepala di Unity, Godot dan three.js

01Bisakah MetaHuman dipakai di Unity?
Kepala FaceNinja adalah FBX atau GLB biasa, jadi bisa. MetaHuman lengkap buatan MetaHuman Creator juga boleh dipakai di engine lain menurut lisensi Epic sejak Juni 2025; periksa ketentuannya.
02Apakah 52 blendshape ikut diimpor?
Ya, menurut nama ARKit: sebagai BlendShapes di Skinned Mesh Renderer Unity, Blend Shapes di MeshInstance3D Godot, dan morph target di three.js.
03Apakah ada rambut?
Tidak dalam berkas ini. Di Unreal, groom MetaHuman menyediakannya; di engine lain, tambahkan rambut sendiri.
04Format mana lebih kecil?
GLB dengan bentuk ARKit sekitar 105 MB dengan tekstur 4K, sedangkan GLB statis sekitar 65 MB. Tekstur 2K memperkecil keduanya.

Bisakah saya mencoba kepala dengan semua 52 shape?

Bisa. Daftar gratis dan unduh 20 kepala contoh: setiap GLB dan FBX memiliki ke-52-nya.