Ana içeriğe geç

Eklenti Yapılandırması

Model Yapılandırması

Her oynatma için gerçekçi model üreteçlerini yeniden oluşturun

Gerçekçi ve Ruh Hali Etkin Gerçekçi modellerle güvenilir çalışma için, uzun sessizliklerde aynı üreteci yeniden kullanmak yerine, her yeni ses çalımından önce üreteci yeniden oluşturun. Ayrıntılar için Sorun Giderme bölümündeki Üreteç Yeniden Oluşturma konusuna bakın.

Standart Model Yapılandırması

Create Runtime Viseme Generator düğümü, çoğu senaryo için iyi çalışan varsayılan ayarları kullanır. Yapılandırma, Animation Blueprint harmanlama düğümü özellikleri aracılığıyla yapılır.

Animasyon Blueprint yapılandırma seçenekleri için aşağıdaki Lip Sync Yapılandırması bölümüne bakın.

Gerçekçi Model Yapılandırması

Create Realistic MetaHuman Lip Sync Generator düğümü, üretecin davranışını özelleştirmenize olanak tanıyan isteğe bağlı bir Configuration parametresini kabul eder:

Model Türü

Model Tipi ayarı, gerçekçi modelin hangi sürümünün kullanılacağını belirler:

Model TürüPerformansGörsel KaliteGürültü YönetimiÖnerilen Kullanım Alanları
Yüksek Düzeyde Optimize Edilmiş (Varsayılan)En yüksek performans, en düşük CPU kullanımıİyi kaliteArka plan gürültüsü veya ses dışı seslerde belirgin ağız hareketleri görülebilirTemiz ses ortamları, performans açısından kritik senaryolar
Yarı Optimize Edilmişİyi performans, orta düzey CPU kullanımıYüksek kaliteGürültülü seslerde daha iyi stabiliteDengeli performans ve kalite, karışık ses koşulları
OrijinalModern CPU'larda gerçek zamanlı kullanım için uygundurEn yüksek kaliteArka plan gürültüsü ve ses dışı seslerde en stabilYüksek kaliteli prodüksiyonlar, gürültülü ses ortamları, maksimum doğruluk gerektiğinde

Performans Ayarları

Intra Op Threads: Modelin dahili işlem operasyonları için kullanılan iş parçacığı sayısını kontrol eder.

  • 0 (Varsayılan/Otomatik): Otomatik algılamayı kullanır (genellikle mevcut CPU çekirdeklerinin 1/4'ü, en fazla 4)
  • 1-16: İş parçacığı sayısını manuel olarak belirtin. Daha yüksek değerler çok çekirdekli sistemlerde performansı artırabilir ancak daha fazla CPU kullanır.

Inter Op Threads: Farklı model işlemlerinin paralel yürütülmesi için kullanılan iş parçacığı sayısını kontrol eder.

  • 0 (Varsayılan/Otomatik): Otomatik algılamayı kullanır (genellikle mevcut CPU çekirdeklerinin 1/8'i, en fazla 2)
  • 1-8: İş parçacığı sayısını manuel olarak belirtin. Gerçek zamanlı işleme için genellikle düşük tutulur.

İşleme Parça Boyutu

İşleme Parça Boyutu, her çıkarım adımında kaç örneğin işlendiğini belirler. Varsayılan değer 160 örnektir (16kHz'de 10ms ses).

  • Daha küçük değerler daha sık güncelleme sağlar ancak CPU kullanımını artırır
  • Daha büyük değerler CPU yükünü azaltır ancak dudak senkronizasyonu tepki süresini düşürebilir
  • Optimum hizalama için 160'ın katlarının kullanılması önerilir

Setting Processing Chunk Size

Ruh Hali Etkin Model Yapılandırması

Create Realistic MetaHuman Lip Sync With Mood Generator düğümü, temel gerçekçi modelin ötesinde ek yapılandırma seçenekleri sunar:

Temel Yapılandırma

Lookahead Ms: İyileştirilmiş dudak senkronizasyonu doğruluğu için milisaniye cinsinden ileri bakış zamanlaması.

  • Varsayılan: 80ms
  • Aralık: 20ms ile 200ms arası (20'ye bölünebilir olmalı)
  • Daha yüksek değerler daha iyi senkronizasyon sağlar ancak gecikmeyi artırır

Çıktı Türü: Hangi yüz kontrollerinin oluşturulacağını kontrol eder.

  • Tüm Yüz: 81 yüz kontrolünün tamamı (kaşlar, gözler, burun, ağız, çene, dil)
  • Sadece Ağız: Yalnızca ağız, çene ve dil ile ilgili kontroller

Performans Ayarları: Normal gerçekçi modelle aynı Intra Op Threads ve Inter Op Threads ayarlarını kullanır.

Mood Ayarları

Mevcut Ruh Halleri:

  • Nötr, Mutlu, Üzgün, Tiksinme, Öfke, Şaşkınlık, Korku
  • Kendinden Emin, Heyecanlı, Sıkılmış, Oyunbaz, Kafası Karışmış

Ruh Hali Yoğunluğu: Ruh halinin animasyonu ne kadar güçlü etkilediğini kontrol eder (0,0 ile 1,0 arası).

Runtime Ruh Hali Kontrolü

Çalışma zamanı sırasında aşağıdaki fonksiyonları kullanarak ruh hali ayarlarını yapabilirsiniz:

  • Ruh Halini Ayarla: Geçerli ruh hali türünü değiştirir
  • Ruh Hali Yoğunluğunu Ayarla: Ruh halinin animasyonu ne kadar güçlü etkilediğini ayarlar (0.0 ile 1.0 arası)
  • Bakış Süresini Ayarla (Ms): Senkronizasyon için bakış süresi zamanlamasını değiştirir
  • Çıktı Türünü Ayarla: Tam Yüz ve Yalnızca Ağız kontrolleri arasında geçiş yapar

Mood Configuration

Ruh Hali Seçim Rehberi

İçeriğinize göre uygun ruh hallerini seçin:

MoodEn İyi Kullanım AlanıTipik Yoğunluk Aralığı
NötrGenel konuşma, anlatım, varsayılan durum0.5 - 1.0
MutluOlumlu içerik, neşeli diyaloglar, kutlamalar0.6 - 1.0
ÜzgünHüzünlü içerik, duygusal sahneler, kasvetli anlar0.5 - 0.9
TiksintiOlumsuz tepkiler, iğrenç içerik, reddedilme0.4 - 0.8
ÖfkeAgresif diyaloglar, çatışma sahneleri, hayal kırıklığı0.6 - 1.0
ŞaşkınlıkBeklenmedik olaylar, açığa çıkmalar, şok tepkileri0.7 - 1.0
KorkuTehdit edici durumlar, kaygı, gergin diyaloglar0.5 - 0.9
Kendinden EminProfesyonel sunumlar, liderlik diyalogları, iddialı konuşma0.7 - 1.0
HeyecanlıEnerjik içerik, duyurular, coşkulu diyaloglar0.8 - 1.0
SıkılmışTekdüze içerik, ilgisiz diyaloglar, yorgun konuşma0.3 - 0.7
NeşeliGündelik sohbet, mizah, hafif kalpli etkileşimler0.6 - 0.9
Kafası KarışmışSoru ağırlıklı diyaloglar, belirsizlik, şaşkınlık0.4 - 0.8

Animasyon Blueprint Yapılandırması

Dudak Senkronizasyonu Yapılandırması

Blend Runtime MetaHuman Lip Sync düğümünün özellikler panelinde yapılandırma seçenekleri bulunur:

ÖzellikVarsayılanAçıklama
Enterpolasyon Hızı25Dudak hareketlerinin visemler arasında ne kadar hızlı geçiş yaptığını kontrol eder. Daha yüksek değerler daha hızlı ve daha ani geçişler sağlar.
Sıfırlama Süresi0.2Dudak senkronizasyonunun sıfırlandığı süreyi saniye cinsinden belirtir. Bu, ses durduktan sonra dudak senkronizasyonunun devam etmesini önlemek için kullanışlıdır.

Gülme Animasyonu

Ayrıca, seste tespit edilen kahkahalara dinamik olarak tepki verecek kahkaha animasyonları da ekleyebilirsiniz:

  1. Blend Runtime MetaHuman Laughter düğümünü ekleyin
  2. RuntimeVisemeGenerator değişkeninizi Viseme Generator pinine bağlayın
  3. Zaten lip sync kullanıyorsanız:
    • Blend Runtime MetaHuman Lip Sync düğümünün çıktısını, Blend Runtime MetaHuman Laughter düğümünün Source Pose girişine bağlayın
    • Blend Runtime MetaHuman Laughter düğümünün çıktısını, Output Pose düğümünün Result pinine bağlayın
  4. Yalnızca lip sync olmadan kahkaha kullanılıyorsa:
    • Kaynak pozunuzu doğrudan Blend Runtime MetaHuman Laughter düğümünün Source Pose girişine bağlayın
    • Çıktıyı Result pinine bağlayın

Blend Runtime MetaHuman Laughter

Ses dosyasında kahkaha tespit edildiğinde, karakteriniz buna göre dinamik olarak animasyon yapacaktır:

Kahkaha Yapılandırması

Blend Runtime MetaHuman Laughter düğümünün kendi yapılandırma seçenekleri vardır:

ÖzellikVarsayılanAçıklama
Enterpolasyon Hızı25Dudak hareketlerinin kahkaha animasyonları arasında ne kadar hızlı geçiş yaptığını kontrol eder. Daha yüksek değerler daha hızlı ve daha ani geçişler sağlar.
Sıfırlama Süresi0.2Kahkahanın sıfırlandığı süreyi saniye cinsinden belirtir. Bu, ses durduktan sonra kahkahanın devam etmesini önlemek için kullanışlıdır.
Maksimum Kahkaha Ağırlığı0.7Kahkaha animasyonunun maksimum yoğunluğunu ölçekler (0.0 - 1.0).

Not: Kahkaha algılama şu anda yalnızca Standart Model ile kullanılabilir.

Mevcut Animasyonlarla Birleştirme

Video tanıtımı

Okumak yerine izlemeyi mi tercih edersiniz? Bu kurulumu birebir ele alan video eğitimine göz atın.

Mevcut vücut animasyonlarının ve özel yüz animasyonlarının üzerine yazmadan dudak senkronizasyonu ve kahkaha uygulamak için:

Vücut animasyonları

Bu kurulum, yüz Animation Blueprint'i için geçerlidir; çünkü lip sync, gövde Animation Blueprint'inin bir parçası değildir. Özel gövde animasyonları için (ör. gövde, kollar ve diğer vücut hareketleri), animasyon dizinizi (bir Sequence Player aracılığıyla) doğrudan gövde Animation Blueprint'indeki çıkış pozuna bağlamanız yeterlidir. Orada ek bir kurulum gerekmez.

  1. Vücut animasyonlarınız ile son çıktı arasına bir Layered blend per bone düğümü ekleyin. Use Attached Parent değerinin true olduğundan emin olun.
  2. Katman kurulumunu yapılandırın:
    • Layer Setup dizisine 1 öğe ekleyin
    • Katman için Branch Filters öğesine aşağıdaki Bone Name değerlerine sahip 3 öğe ekleyin:
      • FACIAL_C_FacialRoot
      • FACIAL_C_Neck2Root
      • FACIAL_C_Neck1Root
  3. Özel yüz animasyonları için önemli: Curve Blend Option içinde "Use Max Value" seçeneğini seçin. Bu, özel yüz animasyonlarının (ifadeler, duygular vb.) lip sync'in üzerine düzgün bir şekilde katmanlanmasını sağlar.
  4. Bağlantıları yapın:
    • Özel animasyonunuz (genellikle istenen animasyon sekansı varlığına sahip bir Sequence Player) → Base Pose girişi
    • Yüz animasyonu çıkışı (lip sync ve/veya kahkaha düğümlerinden) → Blend Poses 0 girişi
    • Katmanlı blend düğümü → Son Result pozu

Layered Blend Per Bone

Morf Hedef Seti Seçimi

Standart Model, özel poz varlık kurulumu aracılığıyla herhangi bir morph target adlandırma kuralını doğal olarak destekleyen poz varlıklarını kullanır. Ek bir yapılandırma gerekmez.

İnce Ayar Lip Sync Davranışı

Ölçeklendirmeye Özel Lip Sync Eğrileri

Modify Curve düğümünü kullanarak, lip sync tarafından üretilen bireysel yüz hareketlerini zayıflatabilir (veya güçlendirebilirsiniz). Bu, belirli bir eğrinin ses içeriğiniz veya karakteriniz için çok belirgin göründüğü durumlarda kullanışlıdır.

Kurulum:

  1. Lip sync blend düğümünüzden sonra bir Modify Curve düğümü ekleyin
  2. Düğüme sağ tıklayın ve Add Curve Pin seçeneğini belirleyin, ardından ölçeklemek istediğiniz eğri adını girin
  3. Düğümün Apply Mode özelliğini Scale olarak ayarlayın
  4. Value parametresini ayarlayın: 1.0'ın altındaki değerler hareketi sönümler, 1.0'ın üzerindeki değerler onu güçlendirir (örneğin, 0.8 = %20 azalma)

Yaygın olarak ölçeklenen eğriler:

Eğri AdıAmaçUygulandığı YerTipik Ayarlama
CTRL_expressions_tongueOutBelirli fonemler sırasında dilin öne doğru çıkmasıStandart modelÇıkıntıyı azaltmak için 0.8
CTRL_expressions_jawOpenÇene açılma aralığıGerçekçi modellerÇene hareketini azaltmak için 0.9

Aynı Modify Curve düğümüne birden fazla eğri pini ekleyerek aynı anda birkaç eğriyi ölçekleyebilirsiniz.

Duygu Durumuna Özel İnce Ayar

Duygu destekli modeller için, belirli duygusal ifadeleri ince ayar yapabilirsiniz:

Kaş Kontrolü:

  • CTRL_expressions_browRaiseInL / CTRL_expressions_browRaiseInR - İç kaş kaldırma
  • CTRL_expressions_browRaiseOuterL / CTRL_expressions_browRaiseOuterR - Dış kaş kaldırma
  • CTRL_expressions_browDownL / CTRL_expressions_browDownR - Kaş indirme

Göz İfadesi Kontrolü:

  • CTRL_expressions_eyeSquintInnerL / CTRL_expressions_eyeSquintInnerR - Göz kısma
  • CTRL_expressions_eyeCheekRaiseL / CTRL_expressions_eyeCheekRaiseR - Yanak kaldırma

Model Karşılaştırması ve Seçimi

Modeller Arasında Seçim Yapma

Projeniz için hangi lip sync modelini kullanacağınıza karar verirken şu faktörleri göz önünde bulundurun:

Dikkate Alınması GerekenlerStandart ModelGerçekçi ModelDuygu Destekli Gerçekçi Model
Karakter UyumluluğuMetaHuman'lar ve tüm özel karakter türleriMetaHuman'lar (ve ARKit) karakterleriMetaHuman'lar (ve ARKit) karakterleri
Görsel KaliteVerimli performansla iyi dudak senkronizasyonuDaha doğal ağız hareketleriyle gelişmiş gerçekçilikDuygusal ifadelerle gelişmiş gerçekçilik
PerformansMobil/VR dahil tüm platformlar için optimize edilmiştirDaha yüksek kaynak gereksinimleriDaha yüksek kaynak gereksinimleri
Özellikler14 viseme, kahkaha algılama81 yüz kontrolü, 3 optimizasyon seviyesi81 yüz kontrolü, 12 duygu, yapılandırılabilir çıktı
Platform DesteğiWindows, Android, QuestWindows, Mac, iOS, Linux, Android, QuestWindows, Mac, iOS, Linux, Android, Quest
Kullanım AlanlarıGenel uygulamalar, oyunlar, VR/AR, mobilSinematik deneyimler, yakın çekim etkileşimleriDuygusal hikaye anlatımı, gelişmiş karakter etkileşimi

Motor Sürümü Uyumluluğu

UE 5.2 Uyumluluk Sorunu

Unreal Engine 5.2 kullanıyorsanız, UE'nin yeniden örnekleme kütüphanesindeki bir hata nedeniyle Realistic Models düzgün çalışmayabilir. Güvenilir lip sync işlevselliğine ihtiyaç duyan UE 5.2 kullanıcıları için lütfen bunun yerine Standard Model kullanın.

Bu sorun yalnızca UE 5.2'ye özgüdür ve diğer motor sürümlerini etkilemez.

Performans Önerileri

  • Çoğu proje için Standart Model, kalite ve performans açısından mükemmel bir denge sağlar
  • MetaHuman karakterler için en yüksek görsel gerçekçiliğe ihtiyaç duyduğunuzda Gerçekçi Model'i kullanın
  • Duygusal ifade kontrolü uygulamanız için önemli olduğunda Duygu Destekli Gerçekçi Model'i kullanın
  • Modeller arasında seçim yaparken hedef platformunuzun performans yeteneklerini göz önünde bulundurun
  • Özel kullanım durumunuz için en iyi dengeyi bulmak amacıyla farklı optimizasyon seviyelerini test edin

Sorun Giderme

Yaygın Sorunlar

Gerçekçi Modeller için Üretici Yeniden Oluşturma: Gerçekçi Modellerle güvenilir ve tutarlı bir çalışma için, bir süre hareketsizlikten sonra yeni ses verisi beslemek istediğinizde üreticiyi her seferinde yeniden oluşturmanız önerilir. Bunun nedeni, sessizlik dönemlerinden sonra üreticileri yeniden kullanırken lip sync'in çalışmayı durdurmasına neden olabilen ONNX runtime davranışıdır.

Örneğin, lip sync üretecini her oynatma başlangıcında yeniden oluşturabilirsiniz; örneğin Play Sound 2D çağırdığınızda veya ses dalgası oynatmayı ve lip sync'i başlatmak için başka bir yöntem kullandığınızda:

Recreate Lip Sync Generator On Play Sound

Runtime Text To Speech Entegrasyonu için Eklenti Konumu: Runtime MetaHuman Lip Sync'i Runtime Text To Speech ile birlikte kullanırken (her iki eklenti de ONNX Runtime kullanır), eklentiler motorun Marketplace klasörüne kurulmuşsa sorunlarla karşılaşabilirsiniz. Bunu düzeltmek için:

  1. Her iki eklentiyi de UE kurulum klasörünüzde \Engine\Plugins\Marketplace altında bulun (ör. C:\Program Files\Epic Games\UE_5.6\Engine\Plugins\Marketplace)
  2. RuntimeMetaHumanLipSync ve RuntimeTextToSpeech klasörlerinin ikisini de projenizin Plugins klasörüne taşıyın
  3. Projenizde bir Plugins klasörü yoksa, .uproject dosyanızla aynı dizinde bir tane oluşturun
  4. Unreal Editor'ı yeniden başlatın

Bu, motorun Marketplace dizininden birden fazla ONNX Runtime tabanlı eklenti yüklendiğinde oluşabilecek uyumluluk sorunlarını ele alır.

Paketleme Yapılandırması (Windows): Paketlenmiş projenizde Windows'ta dudak senkronizasyonu düzgün çalışmıyorsa, Development yerine Shipping derleme yapılandırmasını kullandığınızdan emin olun. Development yapılandırması, paketlenmiş derlemelerde gerçekçi modellerin ONNX çalışma zamanıyla sorunlara neden olabilir.

Bunu düzeltmek için:

  1. Proje Ayarlarınız → Paketleme bölümünde, Derleme Yapılandırmasını Shipping olarak ayarlayın
  2. Projenizi yeniden paketleyin

Shipping Configuration

Blueprint-Only Projects

Bazı Blueprint yalnızca projelerinde, Unreal Engine Shipping seçilmiş olsa bile yine de Development yapılandırmasında derleme yapabilir. Bu durumda, en az bir C++ sınıfı ekleyerek (boş olabilir) projenizi bir C++ projesine dönüştürün. Bunu yapmak için UE editör menüsünde Tools → New C++ Class bölümüne gidin ve boş bir sınıf oluşturun. Bu, projenin Shipping yapılandırmasında doğru şekilde derlenmesini sağlayacaktır. Projeniz işlevsellik açısından yalnızca Blueprint olarak kalabilir; C++ sınıfı yalnızca doğru derleme yapılandırması için gereklidir.

Bozulmuş Dudak Senkronizasyonu Tepkiselliği: Streaming Sound Wave veya Capturable Sound Wave kullanırken dudak senkronizasyonunun zamanla daha az tepkisel hale geldiğini fark ederseniz, bu bellek birikiminden kaynaklanıyor olabilir. Varsayılan olarak, her yeni ses eklendiğinde bellek yeniden tahsis edilir. Bu sorunu önlemek için, biriken belleği boşaltmak amacıyla ReleaseMemory fonksiyonunu periyodik olarak, örneğin yaklaşık her 30 saniyede bir çağırın.

Performans Optimizasyonu:

  • İşlem Parça Boyutunu, performans gereksinimlerinize göre Gerçekçi modeller için ayarlayın
  • Hedef donanımınız için uygun iş parçacığı sayılarını kullanın
  • Tam yüz animasyonu gerekmediğinde, ruh hali destekli modeller için Yalnızca Ağız çıktı türünü kullanmayı düşünün