Áudio na Unity: Como implementar
A Unity é uma engine que não dá tantas possibilidades para nós desenvolvedores em relação ao áudio, porém ela já dá o suficiente para nós fazermos o que é preciso.
Nesse artigo vamos falar sobre o Audio Source e suas funcionalidades.
1 – Como colocar áudio em uma cena
Para colocarmos um áudio na cena vamos precisar do componente Audio Source.
Esse componente vai usar um AudioClip, que é um arquivo .mp3 ou .wav e vai tocar na cena para nós.
Esse AudioClip pode ser uma música ou um efeito sonoro, tudo vai depender de como vamos utilizar o componente AudioSource.
É importante lembrar que na Câmera principal também precisamos de um componente que é o audio listener.
2 – As propriedades do Audio Source
Audio Clip |
Referência ao arquivo de clipe de som que será reproduzido. |
Output | Por padrão, o clipe é saída diretamente para o Ouvinte de Áudio na Cena. Use esta propriedade para produzir o clipe para um misturador de áudio. |
Mute | Se ativado, o som estará tocando, mas silenciado. |
Bypass Effects | Isto é para rapidamente “by-pass” efeitos de filtro aplicados à fonte de áudio. Uma maneira fácil de ligar/desligar todos os efeitos. |
Bypass Listener Effects | Isto é para ativar/desligar rapidamente todos os efeitos do Ouvinte. |
Bypass Reverb Zones | Isto é para ligar/desligar rapidamente todas as Zonas de Reverberação. |
Play On Awake | Se ativado, o som começará a tocar no momento em que a cena for lançada. Se desativado, você precisa iniciá-lo usando o comando Play() a partir do scripting. |
Loop | Habilite isso para fazer o loop clipe de áudio quando chegar ao final. |
Priority | Determina a prioridade dessa fonte de áudio entre todos os que coexistem na cena. (Prioridade: 0 = o mais importante. 256 = menos importante. Padrão = 128.). Use 0 para faixas de música para evitar que seja ocasionalmente trocado. |
Volume | Quão alto o som é a uma distância de uma unidade mundial (um metro) do Ouvinte de áudio . |
Pitch | Quantidade de alteração no tom devido à desaceleração/aceleração do Clipe de Áudio. O valor 1 é uma velocidade normal de reprodução. |
Stereo Pan | Define a posição no campo estéreo de sons 2D. |
Spatial Blend | Define o quanto o motor 3D tem um efeito na fonte de áudio. |
Reverb Zone Mix | Define a quantidade do sinal de saída que é encaminhado para as zonas de reverb. A quantidade é linear na faixa (0 – 1), mas permite uma amplificação de 10 dB na faixa (1 – 1.1) que pode ser útil para alcançar o efeito de sons próximos e distantes. |
3D Sound Settings | Configurações que são aplicadas proporcionalmente ao parâmetro Desclamar Espacial. |
Doppler Level | Determina quanto efeito doppler será aplicado a esta fonte de áudio (se for definido como 0, então nenhum efeito será aplicado). |
Spread | Define o ângulo de propagação para som estéreo 3D ou multicanal no espaço do alto-falante. |
Min Distance | Dentro do MinDistance, o som permanecerá no mais alto possível. Fora minDistance ele vai começar a atenuar. Aumente o MinDistance de um som para torná-lo “mais alto” em um mundo 3D, e diminuí-lo para torná-lo “mais silencioso” em um mundo 3D. |
Max Distance | A distância onde o som pára de atenuar. Além deste ponto, ele permanecerá no volume que estaria nas unidades MaxDistance do ouvinte e não vai atenuar mais. |
Rolloff Mode | Quão rápido o som desaparece. Quanto maior o valor, mais perto o Ouvinte tem que estar antes de ouvir o som. (Isso é determinado por um gráfico). |
– Logarithmic Rolloff | O som é alto quando você está perto da fonte de áudio, mas quando você se afasta do objeto ele diminui significativamente rápido. |
– Linear Rolloff | Quanto mais longe da fonte de áudio você for, menos você pode ouvi-la. |
– Custom Rolloff | O som da fonte de áudio se comporta de acordo com a forma como você define o gráfico de roll offs. |
3 – Colocando músicas de fundo
Para colocarmos músicas de fundo, vamos precisar colocar a música no AudioClip.
Depois vamos definir a prioridade para a mais baixa possível.
Não podemos esquecer de selecionar o Loop e o Play On Awake.
Isso vai permitir a música iniciar com o jogo e fará um loop toda vez que acabar.
Você pode criar um script para definir o volume do som a partir de um PlayerPrefs:
public AudioSource Audio; void Awake () { Audio = GetComponent<AudioSource>(); { void Update () { Audio.Volume = PlayerPrefs.GetFloat("Volume"); }
Dessa forma o jogador vai poder ajustar o volume da música e para fazer isso você cria um script para alterar o PlayerPrefs “Volume”.
4 – Colocando efeitos 2D
Para colocarmos efeitos em 2D vamos criar um script com os efeitos do nosso jogo e botar para tocar quando quisermos:
public AudioClip[] Efeitos; public AudioSource Audio; void Awake () { Audio = GetComponent<AudioSource>(); { public void Tocar (int clipe) { Audio.clip = Efeitos[clipe]; Audio.Play(); }
Não podemos esquecer de colocar a prioridade como mínima possível.
5 – Colocando efeitos 3D
Para colocarmos efeitos sonoros em 3D será um processo parecido com o 2D, mas agora vamos ter que nos preocupar com algumas coisas.
O primeiro é a posição do AudioSource, ele terá que ficar na mesma posição de onde sairá o som.
Vamos ter que definir alguns valores para saber como esse som vai funcionar.
O Rollof vai definir como o som vai se comportar a partir da distância da câmera.
Teremos que definir a distância máxima e mínima, como também a curva que esse som vai fazer:
Quer aprender desenvolvimento de jogos?
Siga o nosso blog: www.crieseusjogos.com.br
Temos vídeos toda semana em nosso canal do Youtube: Crie seus jogos – Youtube
E também baixe gratuitamente: os passos para desenvolver jogos de sucesso
Seja o primeiro a comentar.