Ana içeriğe geç

Eklenti Yapılandırması

Model Yapılandırması​

Her oynatma için gerçekçi model oluşturucuları yeniden oluşturun

Realistic ve Mood-Enabled Realistic modelleriyle güvenilir çalışma için, uzun sessizlikler boyunca aynı generator'ı yeniden kullanmak yerine her yeni ses oynatımından önce generator'ı yeniden oluşturun. Ayrıntılar için Sorun Giderme bölümündeki Generator Recreation sayfasına 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 karıştırma düğümü özellikleri aracılığıyla yapılır.

Animation 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ü, oluşturucunun davranışını özelleştirmenize olanak tanıyan isteğe bağlı bir Configuration parametresi kabul eder:

Model Türü​

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

Model TürüPerformansGörsel KaliteGürültü İşlemeÖnerilen Kullanım Senaryoları
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ışı seslerle belirgin ağız hareketleri gösterebilirTemiz ses ortamları, performans açısından kritik senaryolar
Yarı Optimize Edilmişİyi performans, orta düzeyde CPU kullanımıYüksek kaliteGürültülü seste daha iyi kararlılıkDengeli performans ve kalite, karışık ses koşulları
OrijinalModern CPU'larda gerçek zamanlı kullanıma uygunEn yüksek kaliteArka plan gürültüsü ve ses dışı seslerle en kararlıYüksek kaliteli prodüksiyonlar, gürültülü ses ortamları, maksimum doğruluğun gerekli olduğu durumlar

Performans Ayarları​

Intra Op Threads: Dahili model işleme 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çası Boyutu​

Processing Chunk Size, her çıkarım adımında kaç örneğin işleneceğ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 yanıt hızını düşürebilir
  • Optimum hizalama için 160'ın katlarının kullanılması önerilir

Setting Processing Chunk Size

Ruh Hali Etkinleştirilmiş 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: Lip sync doğruluğunu artırmak için milisaniye cinsinden ileriye bakma zamanlaması.

  • Varsayılan: 80ms
  • Aralık: 20ms ile 200ms arası (20'ye bölünebilir olmalıdır)
  • 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ı belirler.

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

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

Ruh Hali Ayarları​

Mevcut Ruh Halleri:

  • Nötr, Mutlu, Üzgün, İğrenme, Öfke, Şaşkınlık, Korku
  • Kendinden Emin, Heyecanlı, Sıkılmış, Şakacı, Kafası Karışık

Mood 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 ruh hali ayarlarını aşağıdaki fonksiyonları kullanarak düzenleyebilirsiniz:

  • Ruh Halini Ayarla: Mevcut ruh hali türünü değiştir
  • Ruh Hali Yoğunluğunu Ayarla: Ruh halinin animasyonu ne kadar güçlü etkilediğini ayarla (0.0 ile 1.0 arası)
  • İleri Bakış Ms Değerini Ayarla: Senkronizasyon için ileri bakış zamanlamasını değiştir
  • Çıktı Türünü Ayarla: Tam Yüz ve Yalnızca Ağız kontrolleri arasında geçiş yap

Mood Configuration

Ruh Hali Seçim Kılavuzu​

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

MoodEn Uygun Olduğu DurumlarTipik Yoğunluk Aralığı
NötrGenel sohbet, anlatım, varsayılan durum0.5 - 1.0
MutluOlumlu içerik, neşeli diyalog, kutlamalar0.6 - 1.0
ÜzgünHüzünlü içerik, duygusal sahneler, kasvetli anlar0.5 - 0.9
İğrenmeOlumsuz tepkiler, tatsız içerik, reddetme0.4 - 0.8
ÖfkeAgresif diyalog, çatışmalı sahneler, hayal kırıklığı0.6 - 1.0
ŞaşkınlıkBeklenmedik olaylar, açığa çıkışlar, şok tepkileri0.7 - 1.0
KorkuTehdit edici durumlar, kaygı, gergin diyalog0.5 - 0.9
Kendinden EminProfesyonel sunumlar, liderlik diyaloğu, iddialı konuşma0.7 - 1.0
HeyecanlıEnerjik içerik, duyurular, coşkulu diyalog0.8 - 1.0
SıkılmışMonoton içerik, ilgisiz diyalog, yorgun konuşma0.3 - 0.7
ŞakacıGündelik sohbet, mizah, hafif etkileşimler0.6 - 0.9
Kafası KarışıkSoru ağırlıklı diyalog, belirsizlik, şaşkınlık0.4 - 0.8

Animation Blueprint Yapılandırması​

Lip Sync Yapılandırması​

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

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

Kahkaha Animasyonu​

Ayrıca, ses içinde algılanan kahkahalara dinamik olarak yanıt 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 kahkaha kullanılıyorsa ve dudak senkronizasyonu yoksa:
    • Kaynak pozunuzu doğrudan Blend Runtime MetaHuman Laughter düğümünün Source Pose girişine bağlayın
    • Çıkışı Result pinine bağlayın

Blend Runtime MetaHuman Laughter

Seste kahkaha algılandığında, karakteriniz buna göre dinamik olarak animasyon gösterecektir:

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ş yapacağını kontrol eder. Daha yüksek değerler daha hızlı ve daha ani geçişlerle sonuçlanır.
Sıfırlama Süresi0.2Kahkahanın sıfırlanacağı 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 Standard Model ile kullanılabilir.

Mevcut Animasyonlarla Birleştirme​

Video anlatımı

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

Mevcut vücut animasyonlarını ve özel yüz animasyonlarını geçersiz kılmadan, bunların yanında lip sync ve kahkaha uygulamak için:

Vücut animasyonları

Bu kurulum yüz Animation Blueprint'ine uygulanır, çü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 gövde 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.
  2. Katman kurulumunu yapılandırın:
    • Layer Setup dizisine 1 öğe ekleyin
    • Katman için Branch Filters dizisine aşağıdaki Bone Name değerleriyle 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 şekilde katmanlanmasını sağlar.
  4. Bağlantıları yapın:
    • Özel animasyonunuz (genellikle istenen animasyon sekansı varlığıyla birlikte bir Sequence Player) → Base Pose girişi
    • Yüz animasyonu çıktısı (lip sync ve/veya kahkaha düğümlerinden) → Blend Poses 0 girişi
    • Katmanlı blend düğümü → Nihai Result pozu

Layered Blend Per Bone

Morph Target Seti Seçimi​

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

Lip Sync Davranışını İnce Ayarlama​

Belirli Lip Sync Eğrilerini Ölçeklendirme​

Modify Curve düğümünü kullanarak lip sync tarafından üretilen bireysel yüz hareketlerini sönümleyebilir (veya güçlendirebilirsiniz). Bu, belirli bir eğri ses içeriğiniz veya karakteriniz için çok belirgin göründüğünde 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 seçin, 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 hareketi güçlendirir (ör. 0.8 = %20 azalma)

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

Eğri AdıAmaçUygulandığı YerTipik Ayar
CTRL_expressions_tongueOutBelirli fonemler sırasında dilin ileri 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ğriyi aynı anda ölçeklemek için birden çok eğri pini ekleyebilirsiniz.

Ruh Haline Özel İnce Ayar​

Duygu durumu destekli modeller için belirli duygusal ifadeleri ince ayarlayabilirsiniz:

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özleri kısma
  • CTRL_expressions_eyeCheekRaiseL / CTRL_expressions_eyeCheekRaiseR - Yanak kaldırma

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

Modeller Arasında Seçim Yapmak​

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

DeğerlendirmeStandart ModelGerçekçi ModelDuygu Durumu Etkin 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 durumu, 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 plan etkileşimlerDuygusal hikâye 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 Gerçekçi Modeller düzgün çalışmayabilir. Güvenilir lip sync işlevselliğine ihtiyaç duyan UE 5.2 kullanıcıları lütfen bunun yerine Standart Model'i kullanın.

Bu sorun 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 arasında mükemmel bir denge sunar
  • MetaHuman karakterleri için en yüksek görsel sadakate ihtiyaç duyduğunuzda Gerçekçi Model'i kullanın
  • Uygulamanız için duygusal ifade kontrolü önemli olduğunda Duygu Destekli Gerçekçi Model'i kullanın
  • Modeller arasında seçim yaparken hedef platformunuzun performans kapasitesini göz önünde bulundurun
  • Kendi özel kullanım durumunuz için en iyi dengeyi bulmak adına farklı optimizasyon seviyelerini test edin

Sorun Giderme​

Yaygın Sorunlar​

Gerçekçi Modeller için Generator Yeniden Oluşturma: Gerçekçi Modellerle güvenilir ve tutarlı çalışma için, bir hareketsizlik döneminin ardından yeni ses verisi beslemek istediğiniz her seferinde generator'ı yeniden oluşturmanız önerilir. Bunun nedeni, ONNX çalışma zamanı davranışının, sessizlik dönemlerinden sonra generator'lar yeniden kullanıldığında lip sync'in çalışmayı durdurmasına neden olabilmesidir.

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

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 kuruluysa 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. Hem RuntimeMetaHumanLipSync hem de RuntimeTextToSpeech klasörlerini projenizin Plugins klasörüne taşıyın
  3. Projenizde 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 ortaya çıkabilecek uyumluluk sorunlarını ele alır.

Paketleme Yapılandırması (Windows): Windows'ta paketlenmiş projenizde lip sync 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 modeller ONNX runtime ile ilgili sorunlara neden olabilir.

Bunu düzeltmek için:

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

Shipping Configuration

Yalnızca Blueprint Projeleri

Bazı yalnızca Blueprint projelerinde, Shipping seçili olsa bile Unreal Engine 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 düzenleyici menüsünde Tools → New C++ Class yolunu izleyin ve boş bir sınıf oluşturun. Bu, projenin Shipping yapılandırmasında doğru şekilde derlenmesini zorlayacaktı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ş Lip Sync Tepkiselliği: Streaming Sound Wave veya Capturable Sound Wave kullanırken lip sync'in zamanla daha az tepkisel hale geldiğini fark ederseniz, bunun nedeni bellek birikmesi olabilir. Varsayılan olarak, yeni ses her eklendiğinde bellek yeniden tahsis edilir. Bu sorunu önlemek için, biriken belleği serbest bırakmak amacıyla ReleaseMemory fonksiyonunu düzenli olarak çağırın; örneğin yaklaşık her 30 saniyede bir.

Performans Optimizasyonu:

  • Gerçekçi modeller için İşleme Parça Boyutunu performans gereksinimlerinize göre 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 etkinleştirilmiş modeller için Yalnızca Ağız çıktı türünü kullanmayı düşünün