Ana içeriğe geç

Eklentiyi özel karakterlerle nasıl kullanacağınız

Bu kılavuz, Runtime MetaHuman Lip Sync'i MetaHuman olmayan karakterler için kurma sürecinde size adım adım rehberlik eder. Bu süreç, animasyon kavramlarına ve rigging işlemlerine aşinalık gerektirir. Belirli karakteriniz için bu uygulamayı gerçekleştirirken yardıma ihtiyacınız olursa, [email protected] adresinden profesyonel destek alabilirsiniz.

Dudak senkronizasyonu modelleri hakkında önemli not

Özel Karakter Uyumluluğu

Bu kılavuz, MetaHuman veya ARKit morf hedefi adlandırma kurallarını kullanmayan özel karakterleri kapsar.

Gerçekçi (Daha Yüksek Kalite) model, morf hedefleri MetaHuman veya ARKit adlandırma standardını takip eden karakterlerle çalışır ve Morf Hedefi Seti Seçimi üzerinden yapılandırılabilir. Karakteriniz zaten ARKit standartındaki karışım şekli adlarını kullanıyorsa (veya kullanacak şekilde dışa aktarılıp dönüştürülebiliyorsa), bu kılavuzdaki manuel eşleme sürecini izlemeden Gerçekçi modeli kullanabilirsiniz.

Karakteriniz farklı bir morf hedef seti kullanıyorsa (ör. Daz Genesis, Reallusion CC3/CC4, Mixamo, ReadyPlayerMe veya basitleştirilmiş özel bir rig), aşağıdaki adımları izleyerek Standart (Daha Hızlı) model desteklenen seçenektir.

Eklenti Eklentisi Gerekli: Standart Model'i özel karakterlerle kullanmak için, ana kurulum kılavuzunun Ön Koşullar bölümünde açıklandığı gibi Standart Dudak Senkronizasyonu Eklenti eklentisini yüklemelisiniz.

Bu eklenti, bu kılavuzda açıklanan tüm özel karakter uygulamaları için gereklidir.

Ön Koşullar

Başlamadan önce, karakterinizin aşağıdaki gereksinimleri karşıladığından emin olun:

  • Geçerli bir iskelete sahip
  • Yüz ifadeleri için morf hedefleri (karışım şekilleri) içerir
  • İdeal olarak, visemleri tanımlayan 10+ morf hedefine sahiptir (daha fazla visem = daha iyi dudak senkronizasyonu kalitesi)

Eklenti, karakterinizin morf hedeflerini aşağıdaki standart visemlerle eşleştirmenizi gerektirir:

Sil -> Silence
PP -> Bilabial plosives (p, b, m)
FF -> Labiodental fricatives (f, v)
TH -> Dental fricatives (th)
DD -> Alveolar plosives (t, d)
KK -> Velar plosives (k, g)
CH -> Postalveolar affricates (ch, j)
SS -> Sibilants (s, z)
NN -> Nasal (n)
RR -> Approximant (r)
AA -> Open vowel (aa)
E -> Mid vowel (e)
IH -> Close front vowel (ih)
OH -> Close-mid back vowel (oh)
OU -> Close back vowel (ou)

Not: Karakterinizin farklı bir viseme seti varsa (ki muhtemelen vardır), her viseme için birebir eşleşme bulmanız gerekmez. Yaklaşık eşleşmeler genellikle yeterlidir - örneğin, karakterinizin SH visemesini eklentinin CH visemesine eşlemeniz, yakından ilişkili postalveolar sesler oldukları için etkili bir şekilde çalışacaktır.

Viseme eşleme referansı

İşte yaygın visem sistemleri ile eklentinin gerektirdiği visemler arasındaki eşleştirmeler:

ARKit, yüz animasyonu için çeşitli ağız şekilleri de dahil olmak üzere kapsamlı bir dizi blend shape sağlar. Bunları RuntimeMetaHumanLipSync visemelerine şu şekilde eşleyebilirsiniz:

RuntimeMetaHumanLipSync VisemeARKit EşdeğeriNotlar
SilmouthCloseNötr/dinlenme pozisyonu
PPmouthPressLeft + mouthPressRightÇift dudak sesleri için, her iki basma şeklini birlikte kullanın
FFlowerLipBiteLeft + lowerLipBiteRight (veya mouthRollLower)Alt dudak üst dişlere temas eder, "f" ve "v" seslerinde olduğu gibi.
THtongueOutARKit doğrudan dil kontrolüne sahiptir
DDjawOpen (mild) + tongueUp (if you have tongue rig)Dil, diş eti çıkıntısına (alveol) dokunur; çenede hafif bir düşüş olur.
KKmouthLeft or mouthRight (mild)Hafif ağız köşesi çekmesi, damaksıl sesleri yaklaşık olarak taklit eder.
CHjawOpen (mild) + mouthFunnel (mild)Postalveolar sesler için birleştir
SSmouthFrownSibilantlar için hafif bir kaş çatma kullanın
NNjawOpen (very mild) + mouthCloseNeredeyse kapalı ağız, hafif çene açıklığı ile
RRmouthPucker (mild)R-sesleri için ince yuvarlama
AAçeneAçık + ağızGerdirmeSol + ağızGerdirmeSağ (veya çeneAçık + ağızAçık)"ah" sesi için geniş açık ağız
EjawOpen (mild) + mouthSmileHafif gülümsemeyle yarı açık pozisyon
IHmouthSmile (mild)Dudakların hafifçe ayrılması
OHmouthFunnelYuvarlak açık şekil
OUmouthPuckerSıkıca yuvarlatılmış dudaklar

Özel bir Poz Varlığı oluşturma

Karakteriniz için Blend Runtime MetaHuman Lip Sync düğümüyle kullanılacak özel bir poz varlığı oluşturmak için şu adımları izleyin:

1. Karakterinizin İskelet Ağını bulun

Lip sync animasyonu için kullanmak istediğiniz morph target'ları (blend shape'leri) içeren iskelet mesh'i bulun. Bu, karakterinizin tasarımına bağlı olarak tam vücut mesh'i veya sadece bir yüz mesh'i olabilir.

2. Morph Target'ları ve Eğrileri Doğrulayın

Devam etmeden önce, iskelet ağınızın dudak senkronizasyonu animasyonu için uygun morf hedeflerine ve karşılık gelen eğrilere sahip olduğunu kontrol edin.

Morf Hedeflerini Kontrol Edin: İskelet ağınızın, dudak senkronizasyonu animasyonu için görseller (viseme) olarak kullanılabilecek morf hedefleri (karışım şekilleri) içerdiğini doğrulayın. Yüz animasyonu desteğine sahip çoğu karakter, bir miktar fonem/görsel (viseme) morf hedefine sahip olmalıdır.

Example of morph targets in a character

Önemli: Eğriler Sekmesini Doğrulayın Bu adım, özellikle Blender veya diğer harici yazılımlardan dışa aktarılan karakterler için çok önemlidir.

  1. Eğriler sekmesini İskelet Ağı düzenleyicisinde açın
  2. Morf hedeflerinize karşılık gelen eğrileri görüp görmediğinizi kontrol edin
  3. Eğriler sekmesi boşsa ancak morf hedefleri mevcutsa, morf hedeflerinizle tamamen aynı adları kullanarak manuel olarak yeni eğriler ekleyin

Not: Bu sorun genellikle Blender dışa aktarımlarında meydana gelir; morf hedefleri başarıyla içe aktarılır ancak animasyon eğrileri otomatik olarak oluşturulmaz. Eşleşen eğriler olmadan, animasyon Control Rig'e pişirildikten sonra düzgün şekilde doldurulmaz.

Alternatif Çözüm: Blender'dan dışa aktarım sırasında bu sorunu önlemek için, FBX dışa aktarma ayarlarınızda Özel Özellikler ve Animasyon seçeneklerini etkinleştirmeyi deneyin; bu, morf hedeflerinin yanı sıra animasyon eğrilerinin de dahil edilmesine yardımcı olabilir.

3. Bir Referans Poz Animasyonu Oluşturun

  1. Create Asset -> Create Animation -> Reference Pose bölümüne gidin
  2. Animasyon dizisi için açıklayıcı bir ad girin ve uygun bir konuma kaydedin
  3. Oluşturulan Animasyon Dizisi otomatik olarak açılacak ve döngü halinde oynatılan boş bir animasyon gösterecektir

Creating a reference pose asset Naming the reference pose asset

  1. Animasyon oynatımını daha kolay düzenlemek için durdurmak üzere Duraklat düğmesine tıklayın.

Pausing animation playback

4. Animasyon Dizisini Düzenle

  1. Edit in Sequencer -> Edit with FK Control Rig seçeneğine tıklayın
  2. Bake to Control Rig iletişim kutusunda, hiçbir ayarı değiştirmeden Bake to Control Rig düğmesine tıklayın

Editing with FK Control Rig Baking to Control Rig

  1. Düzenleyici, Sequencer sekmesi açıkken Animasyon Moduna geçecek
  2. Görüntüleme Aralığı Bitiş Zamanını 0016 olarak ayarlayın (bu, Çalışma Aralığı Bitişini de otomatik olarak 0016 yapacaktır)
  3. Kaydırıcının sağ kenarını sequencer penceresinin sağ ucuna sürükleyin

5. Animasyon Eğrilerini Hazırlayın

  1. Animasyon Dizisi varlığına geri dönün ve Eğriler listesindeki morf hedeflerini bulun (görünmüyorlarsa, Animasyon Dizisi varlığını kapatıp yeniden açın)
  2. Dudak senkronizasyonu için kullanmak istediğiniz visemler veya ağız hareketleriyle ilgili olmayan tüm morf hedeflerini kaldırın

6. Viseme eşlemenizi planlayın

Karakterinizin visemelerini eklentinin gerektirdiği kümeyle eşleştirmek için bir eşleme planı oluşturun. Örneğin:

Sil -> Sil
PP -> FV
FF -> FV
TH -> TH
DD -> TD
KK -> KG
CH -> CH
SS -> SZ
NN -> NL
RR -> RR
AA -> AA
E -> E
IH -> IH
OH -> O
OU -> U

Not: Karakterinizin viseme seti, gerekli her viseme için birebir eşleşmelere sahip olmadığında tekrarlanan eşlemelerin olması kabul edilebilir.

7. Her bir visemi canlandırın

  1. Her bir visem için ilgili morf hedef eğrilerini 0.0'dan 1.0'a canlandırın
  2. Her visem animasyonunu farklı bir karede başlatın
  3. Doğal görünümlü visem şekilleri oluşturmak için gerektiğinde ek eğriler (çene/ağız açıklığı, dil pozisyonu vb.) yapılandırın

8. Bir Poz Varlığı Oluşturun

  1. Create Asset -> Pose Asset -> Current Animation seçeneğine gidin
  2. Pose Asset için açıklayıcı bir ad girin ve uygun bir konuma kaydedin
  3. Oluşturulan Pose Asset otomatik olarak açılacak ve her biri bir viseme karşılık gelen Pose_0, Pose_1 gibi pozları gösterecektir
  4. Viseme ağırlıklarını önizleyerek beklendiği gibi çalıştıklarından emin olun

Creating a pose asset Naming the pose asset Pose asset with visemes

9. Poz Varlığını Sonlandır

  1. Her pozu, Ön Koşullar bölümündeki viseme adlarıyla eşleşecek şekilde yeniden adlandırın
  2. Kullanılmayan tüm pozları silin

Ses işleme ve harmanlamayı ayarlama

Poz varlığınız hazır olduğunda, ses işleme ve harmanlama düğümlerini ayarlamanız gerekir:

  1. Karakterinizin Animasyon Blueprint'ini bulun veya oluşturun
  2. standart eklenti kurulum kılavuzunda belgelendiği gibi aynı adımları izleyerek ses işleme ve harmanlamayı ayarlayın
  3. Blend Runtime MetaHuman Lip Sync düğümünde, varsayılan MetaHuman poz varlığı yerine kendi özel Poz Varlığınızı seçin

Selecting the custom pose asset

Vücut animasyonlarıyla birleştirme

Vücut animasyonlarıyla birlikte dudak senkronizasyonu yapmak istiyorsanız:

  1. Standart eklenti kılavuzunda belgelendiği gibi aynı adımları izleyin (/runtime-metahuman-lip-sync/plugin-configuration#combining-with-facial-and-body-animations)
  2. MetaHuman kemik adlarını kullanmak yerine, karakterinizin boyun iskeleti için doğru kemik adlarını sağladığınızdan emin olun

Sonuçlar

İşte bu kurulumu kullanan özel karakter örnekleri:

Example 1: Lip sync with custom character

Example 2: Lip sync with different viseme system

Example 3: Lip sync with different viseme system

Dudak senkronizasyonunun kalitesi büyük ölçüde belirli karaktere ve onun visemelerinin ne kadar iyi ayarlandığına bağlıdır. Yukarıdaki örnekler, eklentinin farklı viseme sistemlerine sahip çeşitli özel karakter türleriyle çalıştığını göstermektedir.