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) 的距离函数。当前与音频监听器的距离在图中用红色竖线标记。
AudioListener
作为玩家耳朵使用,每个场景只能有一个才能正常使用、
混响区
混响区(Audio Reverb Zone)获取音频剪辑并根据音频监听器在混响区内的位置使音频剪辑失真。从没有环境效果的点逐渐到有环境效果的点(例如进入洞穴时),便可使用混响区,如果是太空什么的就完全不用
属性
属性 | 功能 |
---|---|
Min Distance | 表示辅助图标中内圆的半径,决定了逐渐出现混响效果的区域和完整的混响区。 |
Max Distance | 表示辅助图标中外圆的半径,决定了没有效果的区域和开始逐渐应用混响的区域。 |
Reverb Preset | 决定了混响区将使用的混响效果。 |
此图说明了混响区的属性。
声音在混响区中的工作方式
动态背景音
AudioMixer
Snapshot 面板
Snapshot 面板允许在混音器中创建、切换和调整不同的快照。始终至少有一个快照处于活动状态,并且在 Snapshot 面板中选择了某个快照即表明对混音器的进一步编辑(音高,音量之类的,尤其是那种氛围音)便是对该快照的编辑。在遭遇敌人时,可以加入与正常音乐同步的鼓点等,新建一个快照
Snapshot 面板中定义的快照也显示为混音器的子资源。允许在编辑器的其他位置以及脚本中访问快照。
事件触发音乐也需要新建一个快照,而且需要使用AudioSource.Transition(int 转换使用的时间)
,比如需要降低背景音乐的音量
使用滑动条调节音量
**①创建AudioMixer并配置
我们希望能调节主音量,背景音,特效音三种,目前只有一个音轨,并不符合我们的要求,
需要新增两条音轨,比如叫背景音和特效音,创建好了之后,并不能直接在代码里控制他们,因为需要将它们**暴露出去,**暴露出去后才能在代码控制
将这三个分别设置为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,
Unity音频相关使用相关推荐
- qcom 音频相关的dsp driver笔记(基于msm8996平台)
qcom 音频相关的dsp driver笔记(基于msm8996平台) 原址 0 前言 1 关于acdb 1.1 从audio_calibration.c说起 1.2 关于acdb配置的注册 1.3 ...
- unity 音频可视化方案
unity 音频组件自带提取频谱数据的方法:GetSpectrumData 于是复习一下ui布局: using System.Collections; using System.Collections ...
- Unity 面试题汇总(三)Unity 基础相关
Unity 面试题汇总(三)Unity 基础相关 目录 Unity 面试题汇总(三)Unity 基础相关 0.FSM(状态机).HFSM(分层状态机).BT(行为树)的区别 1.什么是协同程序? 2. ...
- Android音频开发(1):音频相关知识
Android 音频开发 目录 Android音频开发(1):音频相关知识 Android音频开发(2):使用AudioRecord录制pcm格式音频 Android音频开发(3):使用AudioRe ...
- ios音频相关基础知识
最近在看音频相关的知识,然后就搜集了些基础知识记录下来,以便日后查看和供需要的人学习 1.音频(audio) 指人耳可以听到的声音频率在20HZ~20kHz之间的声波,称为音频. 2.音频采样(aud ...
- 微信小程序音频相关问题:播放,录音等相关
其实我也知道音频问题,十分尴尬,可以参考的资料极少,研究者也不多,所处的教程也基本是基础的内容,稍微深入几乎一篇都没有:所以前段时间我就准备弄的东西,一直没弄,因为没资料去弄,但是今天,看到一个同学遇 ...
- # 蓝牙音频相关知识
蓝牙音频相关知识 文章目录 蓝牙音频相关知识 1 音频源 2 蓝牙音频编解码器 3 一些标准 4 蓝牙音频其他相关知识 4.1 蓝牙版本 4.2 ANC(主动降噪) 4.3 音响相关参数 4.4 音质 ...
- 音频相关操作接口-C++实现
音频相关操作接口-C++实现 单声道转换为双声道 32Float格式音频数据转为16bit格式 注意事项 单声道转换为双声道 // 传入数据长度为原始单声道数据的2倍,无需额外申请空间实现自我复制 v ...
- NAudio音频相关开发
NAudio音频相关开发 一个有用的音频和 MIDI 相关类的库,旨在加速音频相关实用程序的开发,例如 .NET 中的录音机或转换器 NAudio 2.1.0 的新功能: 改进了定位,使其更易于在非 ...
最新文章
- MO-LTR:基于单目RGB视频的多目标定位、跟踪与重建
- Tomcat(一):背景知识和安装tomcat
- 调试笔记--keil 测量周期小技巧
- 【Linux】一步一步学Linux——dpkg-preconfigure命令(275)
- BZOJ 1016 最小生成树计数 【模板】最小生成树计数
- 201671030111 李蓉 实验十四 团队项目评审课程学习总结
- 130 秒揭秘 EDAS 3.0 如何平滑应对突发流量高峰,为您的业务保驾护航
- 我的nginx iis 负载均衡学习(环境搭建)
- 利用Xcode在Mac写第一个C++ project
- mysql u0019_mysql服务无法启动
- 织梦使用if判断某个字段是否为空
- 记杨绛先生的经典语句
- (转)Spring boot(一):入门篇
- pytorch创建tensor
- 程序员硬核测评:全方位测评 GaussDB(for Redis) 和开源 Redis
- 模型保存的方法-----仅保存架构
- 多条件查找并计算机,EXCEL 多条件求和、多条件计数、多条件查找
- 《云计算安全体系》之虚拟化安全读后总结
- A股数据day级前复权数据下载与存储
- 千锋android 开发视频教程,千锋教育Android开发视频