Orta - Özel Bank'lar
Wwise ile özel ses bank'ları yapma rehberi.
Gerekli araçlar:
Wwise 2022.1.3Audiokinetic'ten indir. 2022.1.3 sürümünü kullan. League'in güncel bank'ları Wwise 2022.1 ile oluşturuluyor ve başka sürümlerden çıkan bank'lar yüklenmeyebilir.
Faydalı kaynaklar:
Wwise 101Yeni başlayanlar için resmi kurs. Wwise'ı kullanmayı öğrenmek için izle.
Wwise 201İleri seviye resmi kurs.
League Wwise Hierarchy ReferenceResmi bank'ların nasıl yapılandığını ve seslerini daha iyi yapmak için neleri yeniden kullanabileceğini gör.
Custom Announcer Template, aurecueil ve JessibeeÜcretsiz şablon. Seslerini içine at ve tamamen özel bir spiker bank'ı kur.
Bu rehber, League'in ses sistemi içinde çalışan özel bank'ları nasıl kuracağını anlatır. Wwise'ın temelleri için yukarıdaki Wwise 101 ile başla.
Bank Yapısı ve Ayrı Dışa Aktarma
League sesi iki ayrı dosyaya böler:
audio.bnk/audio.wpk: sadece medya içerir (ham.wemses dosyaları).events.bnk: mantık hiyerarşisini içerir (event'ler, aksiyon dizileri, container'lar, switch'ler ve bus yönlendirmesi).
Wwise'ın hiyerarşisi düzdür. Her elementin bir ID'si ve bir ParentID'si vardır. Bu sayede, tüm ağacı değiştirmeden League'in hiyerarşisindeki mevcut ebeveynlere kendiliğinden bağlanan yeni elementler enjekte edebilirsin.
Özel Bank'larda Ses ve Event'leri Ayırmak
SoundBank oluştururken Wwise yapıyı ve medyayı tek bir bank'ta toplayabilir. İstersen sesi event'lerden ve yapıdan ayırabilirsin. Ayırmak, başkalarının özel bank'larını daha sonra Quartz ile düzenleyebilmesini sağlar.
Ayırırsan şunları oluştur:
- Sadece medyayı tutan bir
_audio.bnk. - Yapıyı ve event tanımlarını tutan bir
_events.bnk.
Ayırmazsan şunu oluştur:
- Medyayı, yapıyı ve event tanımlarını tutan bir
_events.bnk. Kısacası her şeyi.
Proje Hiyerarşisi İçin İyi Uygulamalar
Ses objelerini doğrudan bir Work Unit'in altına koyma:
❌ Kötü:
Work Unit -> Sound SFX
✅ İyi:
Work Unit -> Actor-Mixer -> Random / Sequence Container -> Sound SFXNeden Actor-Mixer Kullanmalı?
Actor-Mixer, bir karakterin yetenek seti ya da bir büyü grubu için merkezi bir kontrolcü gibi çalışır. Varsayılanları Actor-Mixer'da bir kez ayarlarsın:
- Çıkış bus'ı yönlendirmesi (SFX için
daad0rhm) - Attenuation shareset'leri
- Çalma önceliği
- Temel Make-up Gain
Alt container'lar bu ayarları otomatik olarak devralır. Bir sesin özel bir davranışa ihtiyacı varsa, o alt elementte Override parent'ı aç.
Ses Seviyesini Make-up Gain ile Ayarla
Wwise'da seviyeleri dengelerken Voice Volume yerine Make-up Gain'i ayarla. Voice Volume, çalışma zamanındaki fader'lar ve ducking payı ile etkileşir. Make-up Gain ise temiz, öngörülebilir, clipping yapmayan statik bir kazanç verir.
Rastgele Pitch Varyasyonu Eklemek
Riot tekrar eden aksiyonlara doğal duyulsunlar diye genelde küçük, rastgele bir pitch değişimi uygular (örneğin Sett'in W varyasyonları ya da Ölümsüzün Kavrayışı tetiklenmeleri):
- Container'ını ya da ses objeni seç.
- Pitch'in sağındaki simgeye sağ tıkla.
- Bir aralık ayarla, örneğin
-100ile+100cent arası.
Ses Yönlendirme: Çıkış Bus'ları
Oyunun mevcut bus'larını değiştiremezsin. Ama doğrudan mevcut bus'lara yönlendirebilir ya da onların altında kendi alt bus'larını oluşturabilirsin.
| Kullanım | Bus adı |
|---|---|
| Şampiyon SFX'i (standart büyü kullanımları, isabetler ve temel saldırılar) | daad0rhm |
| Şampiyon VO'su | vo_champions |
| Spiker anonsları | vo_announcer_default |
| Şampiyon tema müziği (bunun altında özel bir alt bus oluştur) | mus_champion |
| Arka plan / harita müziği | mus_map |
| Bildirimler ve arayüz sesleri | sfx_hud |
| Taktik ping'ler | sfx_pings |
| Ortam ve çevre sesleri | sfx_environment |
| Teamfight Tactics müziği | tft_mus_default |
Şampiyon savaş sesleri her zaman daad0rhm'ye yönlendirilmeli. Wet bus'lar
global çevre reverb'ünden ve bozulma filtrelerinden geçer (Evelynn'in pasif
ses bozulması gibi). daad0rhm'ye yönlendirmek SFX'lerini temiz tutar.
Resmi Bus'larda Auto-Ducking
Özel sesinin arka plandaki sesleri kısması gerekiyorsa (örneğin özel bir ulti repliği ya da özel bir müzik):
- Sesini özel bir alt bus üzerinden yönlendir.
- Özel bus'ının Auto-Ducking sekmesinde hedef resmi bus'ı ekle (örneğin
mus_map). - Hedef bus'ı Bus Volume ile duck edecek şekilde ayarla, asla Voice Volume ile değil. Voice Volume'u duck etmek, o anda çalan seslerin tamamen kesilmesine yol açabilir.
Konumlandırma ve Attenuation
Attenuation, sesin mesafeyle nasıl azaldığını kontrol eder. Attenuation olmadan sesler tüm haritada tam ses seviyesiyle çalar.
Önemli Ayarlar
- Mesafe birimleri: Wwise mesafe birimleri doğrudan League'in oyun içi menzil birimlerine denk gelir (Sıçra menzili 400; menzilli temel saldırılar 500 ile 650 arası).
- Height Spread'i kapat: League izometrik kameralı düz bir zeminde oynanır. Dikey panlama hatalarını önlemek için 3D konumlandırmada Height Spread'i her zaman kapat.
- Resmi eğrileri kopyalamak: Resmi attenuation asset'lerine ID ile referans veremezsin. Bunun yerine League Wwise Hierarchy Reference üzerinden temel şampiyonların kullandığı maksimum mesafeye, roll-off eğrilerine ve konilere bak, sonra projenin attenuation shareset'lerinde aynı eğrileri yeniden oluştur.
Yükleme Sırası ve .bin ile Override
League'de ilk yüklenen kazanır. İki bank aynı elementi tanımlarsa ikincisininki sessizce yok sayılır.
Yükleme sırasını skin'in .bin dosyasında ayarlarsın:
bankPath: list[string] = {
"ASSETS/Sounds/Wwise2016/VO/en_US/Characters/Yone/Skins/Base/Yone_Custom_VO_audio.bnk" ← Özel bank ilk yüklenir
"ASSETS/Sounds/Wwise2016/VO/en_US/Characters/Yone/Skins/Base/Yone_Base_VO_audio.bnk"
"ASSETS/Sounds/Wwise2016/VO/en_US/Characters/Yone/Skins/Base/Yone_Base_VO_audio.wpk"
"ASSETS/Sounds/Wwise2016/VO/en_US/Characters/Yone/Skins/Base/Yone_Base_VO_events.bnk"
}Bank İsimlendirme Kuralları
- Resmi event'leri override etmek: Sadece oyunda zaten var olan event'leri değiştiriyorsan, özel bank'ının dosya adında
_eventsolması gerekmez. Motor bu event adlarını oyunun kendi bank'ından zaten kaydetmiştir, yani bank'ın ilk yüklendiği sürece onları yakalar. - Yeni event eklemek: Temel şampiyonda olmayan tamamen yeni event'ler ekliyorsan, bank'ının dosya adı
_eventsiçermek zorunda (örneğinYone_Custom_events.bnk). League'in ses yükleyicisi event tanımlarını sadece adında_eventsgeçen bank'lardan okur. - Özel state'ler ve switch'ler: Özel state ya da switch oluşturmak için bir
Init.bnkoluşturup yüklemen gerekir. (League'de özel birInit.bnkenjekte etmek ya da adını değiştirmek deneysel ve doğrulanmamış. Mümkün olduğunda mevcut resmi state ve switch'leri kullan.)
Ek İpucu: Dönüştürme Ayarları
Wwise projende özel dönüştürme ayarları kullanarak (Vorbis sıkıştırma, daha düşük kalite ya da örnekleme hızı) dışa aktardığın .bnk ve .wem dosyalarının son boyutunu ciddi ölçüde küçültebilirsin.
Rehber: aurecueil
