AR Foundation için Artırılmış Yüzler geliştirici kılavuzu

Kendi uygulamanızda insan yüzlerinin üzerinde öğeler oluşturmak için Artırılmış Yüzler'i nasıl kullanacağınızı öğrenin.

Ön koşullar

Temel artırılmış gerçeklik kavramlarını anladığınızdan emin olun ve devam etmeden önce ARCore oturumunun nasıl yapılandırılacağı hakkında daha fazla bilgi edinin.

Yüzleri algılama

Yüzler, ARFaceManager simgesiyle oluşturulan, güncellenen ve kaldırılan ARFace nesnelerle temsil edilir. ARFaceManager her kare için bir kez üç liste içeren bir facesChanged etkinliği çağırır: Eklenen yüzler, güncellenen yüzler ve son kareden bu yana kaldırılmış olan yüzler. ARFaceManager sahnede bir yüz algıladığında yüzü takip etmek için ARFace bileşeninin eklendiği bir Prefabrik oluşturur. Prefabrik, null içinde bırakılabilir.

ARFaceManager kurulumu için yeni bir oyun nesnesi oluşturun ve ARFaceManager öğesini ekleyin.

Face Prefab, yüzün orta duruşunda örneklenen Prefabriktir. Maximum Face Count, izlenebilecek maksimum yüz sayısını temsil eder.

Algılanan yüzlere eriş

Algılanan yüzlere, Yüz Prefabrik olarak bağlı ARFace bileşeni üzerinden erişin. ARFace köşeler, dizinler, köşe normalleri ve doku koordinatları sağlar.

Algılanan yüzün bölümleri

Augmented Faces API, merkezde duruş, üç bölge duruşu ve 3D yüz örgüsü sağlar.

Orta poz

Kullanıcının başının merkezini gösteren orta poz, ARFaceManager tarafından örneklenen Prefab'in başlangıç noktasıdır. Kafatasının içinde, burnun arkasında bulunur.

Ortadaki pozun eksenleri şöyledir:

  • Pozitif X ekseni (X+) sol kulağı işaret ediyor
  • Pozitif Y ekseni (Y+) yüzün dışa doğru yukarısını işaret eder
  • Pozitif Z ekseni (Z+) kafanın merkezini işaret ediyor

Bölge pozları

Sol alında, sağ alnında ve burun ucunda bulunan bölge, kullanıcının yüzünün önemli kısımlarını işaret eder. Bölge pozları, merkez pozuyla aynı eksen yönünü izler.

Bölge duruşlarını kullanmak için ARFaceManager alt sistemini ARCoreFaceSubsystem sürümüne düşürün ve her bölgeyle ilgili poz bilgilerini almak için subsystem.GetRegionPoses() kullanın. Bunun nasıl yapılacağına dair bir örnek için GitHub'da Unity'nin kullanım örneğine göz atın.

3D yüz örgüsü

Yüz örgüsü, insan yüzünü oluşturan 468 noktadan oluşur. Ayrıca merkezdeki pozla göreceli olarak tanımlanır.

Yüz ağını görselleştirmek için Face Prefab öğesine bir ARFaceMeshVisualizer ekleyin. ARFaceMeshVisualizer, algılanan yüze karşılık gelen bir Mesh oluşturur. Bu Mesh, ekli MeshFilter ve MeshCollider öğelerindeki örgü olarak ayarlanır. Yüzü oluşturmak için kullanılan Material işaretini ayarlamak için MeshRenderer kullanın.

AR Default Face Prefab, algılanan yüz örgülerinde varsayılan malzeme oluşturur.

AR Varsayılan Yüzünü kullanmaya başlamak için şu adımları uygulayın:

  1. ARFaceManager kurun.
  2. Hierarchy sekmesinde + > öğesini kullanın XR Yeni bir yüz nesnesi oluşturmak için AR Default Face tuşuna basın. Bu nesne geçicidir ve Face Prefab'i oluşturduktan sonra silinebilir.

  3. Denetleyicide AR Default Face öğesine erişin.

  4. Önceden kurulum oluşturmak için yeni oluşturulan AR varsayılan yüzünü Hierarchy sekmesinden Project Assets penceresine sürükleyin.

  5. Yeni oluşturulan Prefab'i, ARFaceManager Face Prefab alanında yüz Prefabrik olarak ayarlayın.

  6. Artık gerekli olmadığı için Hierarchy sekmesinde yüz nesnesini silin.

Yüz ağının köşelerine ayrı ayrı erişim

Yüz ağının köşelerinin konumlarına erişmek için face.vertices simgesini kullanın. İlgili köşe noktası normallerine erişmek için face.normals değerini kullanın.

Yüz ağının ayrı köşelerini görselleştirin

Bir yüz ağının köşelerine karşılık gelen dizin numaralarını kolayca görüntülemek için Blender'ı kullanabilirsiniz:

  1. Blender'ı açın ve GitHub'dan canonical_face_mesh.fbx dosyasını içe aktarın.
  2. Edit > Preferences > Interface adresine gidiş rotasını izle.
  3. Display menüsünden Developer Extras öğesini seçin.

  4. 3D görüntü alanında tıklayarak yüzü seçin ve Düzenleme Moduna girmek için Sekme tuşuna basın.

  5. Overlays görüntü alanının yanındaki açılır menüyü açın ve Indices öğesini seçin.

    Blender yüz örgü indeksleri

  6. Dizin numarasını belirlemek istediğiniz tepe noktasını vurgulayın. Tüm köşeleri vurgulamak için Select > All kullanın.