1 puan yazan GN⁺ 2025-09-28 | Henüz yorum yok. | WhatsApp'ta paylaş
  • 2021'de hazırlanan bu mod, Deus Ex 1 için dudak senkronunu ve göz kırpma animasyonlarını iyileştiriyor
  • Geliştirici, orijinal oyundaki dudak senkronu uygulamasının çıkıştan beri düzgün çalışmadığını fark ediyor
  • Valve'ın Half-Life 2'de kullandığına benzer bir fonem çıkarımı ve ağız şekli eşleme yönteminin Deus Ex'te de uygulandığını analiz ediyor
  • Unrealscript kodu içindeki hatalı kare hızı kontrolü ve blending zamanlaması sorunları düzeltilerek daha doğal animasyonlar elde ediliyor
  • Kusursuz bir uygulama için fonem güncelleme sıklığı sorununu çözmek hâlâ gerekiyor

Giriş ve arka plan

  • Bu mod, Deus Ex 1 karakterlerinin diyalog sırasındaki dudak senkronu ve göz kırpma animasyonlarını iyileştiren bir proje
  • Orijinal oyunda dudak senkronu davranışı ve göz kırpma animasyonları çıkış anından itibaren hatalı uygulanmış
  • Yazar, daha önce Twitter'da paylaştığı çalışma sürecini derleyip burada tanıtıyor
  • Mod indirme bağlantısı ayrı bir sayfada sunuluyor: ModDB

Mevcut dudak senkronu uygulamasının incelenmesi

  • Oyun sırasında dudak senkronundaki ağız şekli geçiş sorunları ve tuhaf animasyon davranışları tespit ediliyor
  • Chris Norden'ın (Deus Ex geliştiricisi) röportajına göre, ilk dudak senkronu sistemi oldukça gelişmişti ancak performans gerekçeleriyle sadeleştirildi
  • Unrealscript tarafında ne kadarının gerçekten uygulanmış olduğu ve bunun ne ölçüde düzeltilebileceği inceleniyor
  • Kaynak kodu yok; yalnızca script'lere erişilebiliyor

Dudak senkronunun çalışma mantığı

  • Yazarın daha önce Half-Life 2 dudak senkronu sistemini analiz etmiş olması nedeniyle bu konuda deneyimi bulunuyor
  • Valve, ses dosyalarındaki fonemleri (phoneme) çıkarıp dil bilgisini .wav dosyasının sonuna ekliyor; çalışma anında da uygun zamanlarda ağız şekilleri (viseme) arasında geçiş yapıyor
  • Bu yaklaşım, fonemleri önceden çıkararak çalışma sırasındaki yükü azaltma avantajı sağlıyor

Deus Ex'in yapısal sorunları

  • Deus Ex'te fonem bilgilerinin herhangi bir yerde saklanmadığı, bu yüzden çalışma anında gerçek zamanlı çıkarım yapılıyor olabileceği düşünülüyor
  • Unrealscript analizi sonucunda sistemin skeletal animation yerine vertex animation tabanlı olduğu ve toplam 7 ağız şekli ile 1 göz kırpma animasyonu sunduğu görülüyor
  • Harici ses sistemi nextphoneme değerini A, E, F, M, O, T, U veya X (ağzın kapalı olduğu durum) olarak belirliyor; karakter script'i de buna göre ağız şeklini değiştiriyor

Hatalar ve iyileştirme çalışmaları

  • Orijinal kodda kare hızı değerlendirme mantığı ters çalışıyor, bu yüzden yüksek kare hızında bile ağız şekilleri anında değişiyor
  • Blending süresi (tweentime) fazla kısa (0.1 saniye) ayarlandığı için doğal geçiş hissi kayboluyor
  • Kare hızı kontrol koşulu görmezden gelinerek tweentime yeterince uzun olacak şekilde (0.35 saniye) ayarlanıyor
  • Sonuç olarak dudak senkronu çok daha akıcı şekilde bağlanıyor

Ağzı kapatma ve göz kırpma işlemleri

  • Replik bittikten sonra ağzı kapatırken de doğal blending uygulanması için ek mantık ekleniyor
  • Animasyon mantığı daha önce yalnızca bIsSpeaking değişkenini kontrol ederken, artık dudak senkronu animasyonunun sürekli çalışması sağlanıyor
  • Göz kırpma hızı da kullanıcı tarafından sürekli fark edilebilir olacak şekilde ayarlanıyor

Yapısal sınırlar ve eksikler

  • nextphoneme güncelleme sıklığı düzensiz ve her tick'te güncellenmiyor; bu da yapısal bir sınır oluşturuyor
  • Bu yüzden tüm blending düzgün uygulansa bile kusursuz bir dudak senkronu deneyimi mümkün olmuyor
  • Eğer güncellemeler sabit aralıklarla yapılsaydı blending hızı buna göre optimize edilebilirdi, ancak mevcut yapıda bu mümkün değil
  • NPC ve oyuncu karakter sınıflarında aynı mantığın tekrarlı biçimde uygulanması gibi kod verimsizlikleri de mevcut

Son düzeltmeye ait örnek kod

  • Yazının alt kısmında iyileştirilmiş dudak senkronu fonksiyonunun tam kodu paylaşılıyor
  • Başlıca iyileştirmeler: kare hızı kontrolünün yok sayılması, tweentime değerinin ciddi ölçüde artırılması, replik sonrasında yumuşak ağız kapama, göz kırpma sıklığı ve hızının ayarlanması

Sonuç

  • Bu mod sayesinde orijinal sürüme kıyasla çok daha doğal ve geliştirilmiş dudak senkronu ile göz kırpma animasyonları elde edilebiliyor
  • Yapısal kısıtlar nedeniyle tam anlamıyla kusursuz dudak senkronu zor olsa da, şu anda erişilebilir en iyi çözüm bu

Henüz yorum yok.

Henüz yorum yok.