Mitme heli korraga esitamine
Kontrollimise keskkond
- Windows
-
- Windows 11
- Ühtsuse toimetaja
-
- 2021.3.3f1
- Sisendsüsteemi pakett
-
- 1.3.0
Selle näpunäite eeltingimused
Selle vihje kirjeldamise eelduseks on eelnevalt tehtud järgmised sätted.
Prooviga kaasas oleva materjali kohta
Heliefektid on laenatud järgmistelt saitidelt.
Teave helifailide kohta
Unity standardfunktsioonidega saab esitada järgmisi helifailivorminguid: Palun valmistage see ette, sest seda kasutatakse nendes näpunäidetes.
- WAV (.wav)
- OggVorbis (.ogg)
- MPEG kiht 3 (.mp3)
Lisateabe saamiseks vaadake Unity ametlikku dokumentatsiooni.
Teave mitme samaaegse heli taasesituse kohta
Eelmistes näpunäidetes kasutasime helifaili esitamiseks AudioSource'i, kuid kui proovisime teha ühte heli ja mitut heli, kadus eelmine heli. Näiteks kui teil on mängus kaks plahvatust, on ebaloomulik, et esimene heliefekt kaob, kui teine plahvatus tekitab heliefekti. Selles jaotises kirjeldatakse, kuidas esitada sama heli mitu korda üksteise peal.
Heli samaaegse esitamise juhised
Siin selgitan ma punktist, kus ma lõin uue projekti, kuid kui teate Ühtsust teatud määral, saate välja lõigata ainult asjakohased osad ja need meelde jätta.
Seekord mängib heliefekt iga kord, kui klõpsate nuppu. Looge oma kasutajaliides nii, nagu näidatud. Üksikasjad on asjakohased ja head.
Lisage helifail, kukutades selle oma projekti.
Lisage heliallikas hierarhiasse. Sellisel juhul ei määra te heliklippi otse AudioSource'i.
Skripti lisamine. ButtonEvent
Jätke nimi nimeks .
Skript näeb välja selline:
using UnityEngine;
public class ButtonEvent : MonoBehaviour
{
[SerializeField] private AudioSource AudioSource;
<summary>音声データ。</summary>
[SerializeField] private AudioClip AudioClip;
public void OnClickPlay()
{
// オーディオを再生します
AudioSource.PlayOneShot(AudioClip);
}
}
AudioSource
Mõelge sellele kui heli juhtimise klassile, täpselt nagu eelmised näpunäited.
AudioClip
on klass, mis salvestab heliandmeid. Siin saate seadistada helifaile.
AudioSource.PlayOneShot
Kui edastate selle meetodile argumendina, saate heliandmeid esitada AudioClip
.
Selle meetodiga esitatavat heli juhitakse iseseisvalt.
Kui helistate sellele meetodile uuesti, mängitakse seda uue häälena eelmisest eraldi.
Seetõttu on võimalik heli uuesti mängida iga kord, kui seda meetodit nimetatakse.
Manustage skript EventSystemile.
Määrake "Heliallika" jaoks hierarhiasse lisatud "Heliallikas".
"Heliklipi" jaoks määrake projektist helifail.
Lõpuks seadke meetod nupu klõpsamissündmusele.
Käivitage mäng ja klõpsake nuppu. Ma arvan, et heliefektid mängivad. Samuti, kui klõpsate taasesituse ajal uuesti nuppu, esitatakse uus heli ilma, et eelmine heli kaoks.
AudioClip
Sel viisil on nüüd võimalik esitada sama heli üksteise peal, esitades heli .
See võimaldab mängul mängida ilma, et eelmine heli ebaloomulikult kaoks.
Puudused AudioClipiga mängimisel
AudioClip
Suutsin heli üksteise peal mängida, mängides seda kasutades , kuid vastupidi, ilmnevad järgmised puudused.
Heli muutub lärmakaks
Nagu näete, kui klõpsate nuppu pidevalt, kattuvad helid ja mängitav harmooniline muutub valjemaks ja valjemaks. Näiteks kui soovite mängida heliefekti, kui mängus tabab rünnak, Kui korraga esineb mitu tabamust ilma meetmeid võtmata, võib neid mängida ebanormaalse helitugevusega.