Unity音频相关使用

认识音频组件

AudioClip

想要播放的音频文件,存储在Assets文件夹中

AudioSource

播放音频文件,能调节音量,3D效果音。音频源就像一个控制器,用于启动和停止该剪辑音源的播放,以及修改其他音频属性。

Priority:从场景中存在的所有音频源中确定此音频源的优先级。(Priority值为0 表示优先级最高。值为256, 表示优先级最低。默认值为 128)。对于音轨值应为 0,避免被意外擦除。

Rolloff Mode声音衰减的速度。此值越高,监听器必须越接近才能听到声音。(这取决于图)。
- Logarithmic Rolloff靠近音频源时,声音很大,但离开对象时,声音降低得非常快。
- Linear Rolloff与音频源的距离越远,听到的声音越小。
- Custom Rolloff音频源的音频效果是根据曲线图的设置变化的。

距离函数

可按音频源与音频监听器之间距离的函数形式修改音频的若干属性。

Volume:随着距离变化的幅度(0.0 到 1.0)。

Spatial Blend(设置 3D 引擎对音频源的影响程度。):2D(原始声道映射)到 3D(所有声道下混为单声道并根据距离和方向衰减)。

Spread(在发声空间中将扩散角度设置为 3D 立体声或多声道):随着距离变化的角度(0.0 到 360.0 度)。

Low-Pass(仅当低通滤波器 (LowPassFilter) 附加到音频源时):随着距离变化的截止频率(22000.0 到 10.0)。

Reverb Zone:路由到混响区的信号量。请注意,音量属性以及距离和方向衰减首先应用于信号,因此会同时影响直接信号和回响信号。

音量 (Volume)、空间混合 (Spatial Blend)、扩散 (Spread)、低通 (Low-Pass) 音频滤波器和混响区混合 (Reverb Zone Mix) 的距离函数。当前与音频监听器的距离在图中用红色竖线标记。

音量 (Volume)、空间混合 (Spatial Blend)、扩散 (Spread)、低通 (Low-Pass) 音频滤波器和混响区混合 (Reverb Zone Mix) 的距离函数。当前与音频监听器的距离在图中用红色竖线标记。

AudioListener

作为玩家耳朵使用,每个场景只能有一个才能正常使用、

混响区

混响区(Audio Reverb Zone)获取音频剪辑并根据音频监听器在混响区内的位置使音频剪辑失真。从没有环境效果的点逐渐到有环境效果的点(例如进入洞穴时),便可使用混响区,如果是太空什么的就完全不用

属性

img

属性功能
Min Distance表示辅助图标中内圆的半径,决定了逐渐出现混响效果的区域和完整的混响区。
Max Distance表示辅助图标中外圆的半径,决定了没有效果的区域和开始逐渐应用混响的区域。
Reverb Preset决定了混响区将使用的混响效果。

此图说明了混响区的属性。

声音在混响区中的工作方式

声音在混响区中的工作方式

动态背景音

AudioMixer

在这里插入图片描述

Snapshot 面板

Snapshot 面板允许在混音器中创建、切换和调整不同的快照。始终至少有一个快照处于活动状态,并且在 Snapshot 面板中选择了某个快照即表明对混音器的进一步编辑(音高,音量之类的,尤其是那种氛围音)便是对该快照的编辑。在遭遇敌人时,可以加入与正常音乐同步的鼓点等,新建一个快照

Snapshot 面板中定义的快照也显示为混音器的子资源。允许在编辑器的其他位置以及脚本中访问快照。

img

事件触发音乐也需要新建一个快照,而且需要使用AudioSource.Transition(int 转换使用的时间),比如需要降低背景音乐的音量

使用滑动条调节音量

**①创建AudioMixer并配置

我们希望能调节主音量,背景音,特效音三种,目前只有一个音轨,并不符合我们的要求,

需要新增两条音轨,比如叫背景音和特效音,创建好了之后,并不能直接在代码里控制他们,因为需要将它们**暴露出去,**暴露出去后才能在代码控制

img

将这三个分别设置为Main,BGM,Texiao

②将音效片段中OutPut 指定音轨

我们需要将Audio Source下的OutPut选中对应的音轨,

例如这个音效是背景音,就选中BGM音轨

③将 AudioMixer和Slider建立连接

//控制主音量
public void ControlMainVolume(float v){
		audioMixer.SetFloat("Main", v);
}

然后把滑动条和创建好的AudioMixer拖入代码公开变量中

④配置Slider,并添加事件

进入游戏中根据Edit in play mode 中滑动db条,来选择Min Value和Max Value,一般为(-80,0)

区域背景音

很多游戏中都有特殊的区域需要一些特定的背景音,比如多风的山谷,野兽低吼的森林之类的

这时候就需要在场景中新建一个空物体,并在其上添加AudioSource,

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值