AudioSource组件
AudioSource是音频源组件,其作用就是用于播放音频剪辑(AudioClip)资源。
组件属性:
(1)AudioClip(音频剪辑):指定播放的音频文件。我们导入到 Unity 中的所有声音文件,在Unity 引擎中的资源类型都是 AudioClip 类型。Unity 能使用的音频格式: .aif .wav .mp3 .ogg 。
(2)Output(音频输出):可以输出到音频监听器(AudioListener)或者(AudioMixer)。当设置为空时,即代表输出到 AudioListener,而设置到AudioMixer时需要指定具体的AudioMixer。
(3)Mute(是否静音):主要是针对游戏中的音效,优势在于不会卸载声音数据,可以做到及时播放,音效一般比较多、占用内存小,使用静音可以让画面快速响应,且可以立刻恢复当前音效。
(4)Bypass Effects(音源滤波开关):作用在当前音源的音频滤波器的开关。
(5)Bypass Listener Effects(监听器滤波开关):作用在当前监听器的音频滤波器的开关。
(6)Bypass Reverb Zones(回音混淆开关):勾选不执行回音混淆的效果。
(7)Play On Awake(启动播放开关):勾选就会在绑定组件的GameObject加载并启用时立刻播放音频。
(8)Loop(循环播放开关):音频播放结束自动循环。
(9)Priority(播放优先级):决定音源在场景中存在的所有音源中的播放优先级。
(10)Volume(音量):调节音量的大小。
(11)Pitch(音调):播放音频时速度的变化量 ,默认值1,表示正常的播放速度。(当<1时,慢速播放;当>1时,快速播放。速度越快,音调越高。)
(12)Stereo Pan(声道占比)
(13)Spatial Blend(空间混合):指定音源是2D音源(0)、3D音源(1)或者是二者插值的复合音源。
(14)Reverb Zone Mix(回音混合)
(15)3D Sound Settings(3D音频设置)
Audio Source 常用函数:
- Play() 函数
- 播放音频剪辑。
- Stop() 函数
- 停止播放。
- Pause() 函数
- 暂停播放。
Audio Listener 组件:
- Audio Listener:声音侦听器,即我们在游戏世界中的 “耳朵”。
- 我们依靠该组件听游戏中的声音,如果没有这个组件,我们是听不到任何声音的。
- 默认状态这个组件挂载在摄像机身上。
AudioSource使用案例:
为场景中的一个对象添加 AudioSource组件。
将音频文件拖动到 Audio Clip 中。
新建 C# 文件,并将其添加到该物体对象上。 C#文件内容如下:
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class SoundCancel : MonoBehaviour
{
AudioSource audioS;
// Start is called before the first frame update
void Start()
{
audioS = this.GetComponent <AudioSource>();
}
// Update is called once per frame
void Update()
{
if(Input.GetKeyDown(KeyCode.P))
{
audioS.Play();
}
if (Input.GetKeyDown(KeyCode.O))
{
audioS.Stop();
}
}
}
运行项目,音频文件播放,当按下 “O” 键,播放停止;按下 “P” 键,音频再次播放。