Unreal Engine 5 ses özellikleri çeşitli ses gereksinimleri olan projeleri destekleyebilir. Ses dosyalarını içe aktarmak için içerik klasörüne gidebilir, İçe Aktar düğmesine tıklayabilir veya işletim sisteminizin dosya gezginini kullanarak ilgili klasörü bulabilirsiniz. Sonrasında motor, sesinizle beraber bir .uasset oluşturur. Unreal Engine .wav, .ogg, .flac, .aif, .opus ve .mp3 dosyalarını destekler. Dosyalar 16 veya 24 bit derinlik ve herhangi bir örnekleme hızına sahip olabilir. Dahili olarak, Unreal Engine içe aktarılan ses dosyalarını 16-bit sıkıştırılmamış .wav formatında depolar.
Unreal’daki ses motoru hakkında daha fazla bilgi için aşağıdaki dokümantasyonu inceleyebilirsiniz:
Ses işaretleri, çalışma zamanında sesleri çalmak için kullanılan objelerdir. Ses işaretleri, aynı kavramı temsil eden bir ses dosyası kümesinden seçilir. Örneğin “Rüzgâr” için bir ses işaretiniz bulunuyor; ses işareti çalışma zamanında kayıttan oynatmak üzere birden fazla rüzgâr sesi dosyasından seçim yapacaktır. Papağan’da bunun bir örneği su sıçraması ses işaretidir: İçerik/Ses/Ses Efekti (SFX)/WaterSplash/CUE_WaterSplashSound
Ses sınıfları, ses motoru tarafından birden fazla sesi bir arada gruplamak ve ardından ilgili tüm ses dalgalarının parametrelerini aynı anda değiştirmek için kullanılan öğe türleridir. Papağan’da MainSoundClass bulunur, bu da Müzik ve Ses Efekt’ini (SFX) karıştırır (mix).
Ses sınıfı miksleri ses düzeyi eşikleri uygulayabilir ve bir ses sınıfındaki herhangi bir ses oynatıldığında otomatik olarak uygulanır.
Papağan’a Özgü Uygulama
Papağan’da kullanılan seslerin çoğu tek bir ses içeren ses işaretleridir. Ses düzeyi ve perdesi, ses işaretleri için ayrı ayrı ayarlanır. Genel ses düzeyi, varsayılan ses sınıfı ve ayarlar için ses miksleri tarafından kontrol edilir. Müziği daha verimli kılmak için Papağan, özel bir ses alt sistemi kullanır.
Alınabilir Eşya Örneği
Alınabilir eşyalar, bir kez çalan ve sonrasında yok olan basit ses işaretlerine bir örnektir. Alınabilir eşyalar, opengameart.org’dan alınan para ses efektlerini kullanır. İçe aktarılan kaynak öğeler İçerik/Öğeler/OpenGameArt/8bitCoinSounds altında yer alır. Bu dosyaların her biri için oluşturulan ses işaretleri İçerik/Ses/Ses Efekti (SFX)/Alınabilir Eşyalar altında bulunur. Alınabilir eşya olayı başlatıldığında BP_PickupBase içindeki istenen ses işaretiyle Sesi 2D Oynat’ı çağırın.
Tüm alınabilir eşyalar, görsel efektleri (VFX) ve ses efektlerini (SFX) destekler; ayrıca temas halinde yok edilmelidir. Bu işlem BP_PickupBase sınıfı ile gerçekleştirilebilir.
Burada Sesi 2D Oynat’ı kullanabilirsiniz çünkü sesin dünya ile mekânsal olarak alakalı olması gerekmiyor. Sesin mekânsal olarak alakalı olması gerekiyorsa bunun yerine Sesi Konumda Çal’ı kullanabilirsiniz.
Müzik Döngüleri
Müzik, standart ses işaretleri gibi çalışır. Ses dosyalarını içe aktarmak ve ses işaretlerini ayarlamak ses efektleriyle aynıdır. Ancak bazı ek adımlar bulunuyor:
İçe aktarılan ses öğesinde, sanallaştırma modunun Sessizken Oynat olarak ayarlandığından emin olun. Bu, müziğin ses düzeyi ayarlarına uyulmasını sağladığı için önemlidir. Bu ayar yapılmazsa, ses düzeyi kısıldığında ses yok olur ve ses düzeyini geri getirdiğinizde ses çalmaz.
Ses işaretinde parça (track) düğümüne tıklayarak Döngü’nün ayarlandığından emin olun.
Ses Ayarları
Papağan’daki tüm ayarlar çeşitli ses düzeyleriyle ilgilidir.
İçerik/Ses/Ayarlar altında MainSoundClass adında bir ses sınıfı öğesi bulunur. Alt Sınıflar altında ses sınıfınızı diğer ilgili ses sınıflarına yönlendirebilirsiniz. Varsayılan alt sınıflar Ses Efekti ve Müzik’i içerir.
Aynı klasörde DefaultSoundMix adında bir öğe vardır. Ses Sınıfı Efektleri’ni MainSoundClass ayarlarında ayarlayabilirsiniz. Alt Öğelere Uygula’nın etkin olduğundan emin olun.
Her ses işaretinde, sınıfın uygun kategoriye ayarlandığından emin olun. Alınabilir eşyalar için Ses Efekti (SFX) sınıfını kullanın.
Çalışma zamanında miks ayarlarını değiştirmek için Ses Sınıfı Karışımını Geçersiz Kılmayı Ayarla düğümüyle birlikte Ses Karışımı Değiştiriciyi Zorla düğümünü kullanın. Bu, yaptığınız tüm değişiklikleri uygular.
Bu bir blueprint örneğidir ancak Papağan’da bu işlem genellikle ses alt sisteminde C++ ile yapılır.
Papağan’da Ses Alt Sistemi
Bu bölümde ses alt sistemi uygulamasının ne yaptığı açıklanmaktadır. Papağan’da sesler için neden bir alt sistem olduğunu öğrenmek için Papağan’daki Alt Sistemler bölümüne bakabilirsiniz.
Papağan’ın ses alt sistemi bir C++ sınıfıdır ve UParrotAudioSubsystem olarak adlandırılır. Oyun örneğinin yaşam süresini paylaşır çünkü ses düzeyi ayarları ana menüden veya duraklatma menüsünden herhangi bir zamanda değiştirilebilir. Oyun oynanırken ses alt sistemi ayrıca oyun durumu değişikliklerini de dinler. Ardından bir bölüm başladığında veya tamamlandığında ya da oyuncu sınırların dışına çıktığında müzik parçasını değiştirebilirsiniz.
WBP_SettingScreen, ses alt sistemini çalışırken gösterir. Kaydırıcı değerler, UMG’den (Unreal Motion Graphics Kullanıcı Arayüzü Tasarlayıcısı) C++ içinde alt sisteme aktarılır. Çalışma zamanı ses karıştırıcısı, değerler her değiştiğinde güncellenir. Yavaşça Açılma (Fade In) süresi sıfırdır, böylece ses düzeyi değişiklikleri hemen uygulanır.
Ayarlar Ses Ayarlarını Kaydet düğümü ile kaydedilir.
Bu ayarları kaydetmek için serileştirmenin nasıl çalıştığına dair ayrıntıları görmek üzere Papağan’da Serileştirme bölümüne bakabilirsiniz.
Papağan’da müziğin neredeyse tamamı C++ ile yapılmıştır. Papağan’ın yapısında her harita bir bölümdür, bu nedenle bir AParrotWorldSettings sınıfı bulunur. Bölüm müziği gibi dünyaya özgü verileri ayarlamak için bunu kullanabilirsiniz. Ses alt sistemi, dünya ayarlarını sorgular ve ihtiyaç duyduğu parçayı çeker. Oyun başladıktan sonra durum değişikliklerine tepki vermek için WorldBeginPlay’de Papağan Oyun Durumu’na bağlanın.