Unity3D 播放声音需要使用 Audio Source 组件,并且需要 Audio Listener 组件配合,不然无法听到声音。Main Camera 会默认有 Audio Lisetener。

Unity3D 支持的音频格式有:ogg、mp3、wave、AIFF。

音频管理器(Edit-->ProjectSetting--> Audio):对声音进行一些全局设置,AudioSettings 类可以动态操作。

Global Volume: 全局播放的音量;

Volume Rolloff Scale: 衰减因子,越大,声音衰减越快;

Doppler Factor: 多普勒因子,模拟多普勒效应的监听效果:0关闭, 1 高速物体的多普勒效应会比较明显的监听的到;

Default Speak Mode: 设定扬声器模式(AudioSpeakModer);默认值为2立体声;

System Sample Rate: 输出取样频率。如果设置为0,系统取样频率将被使用。注意,这只是一个参考只有特定平台允许改变,比如 iOS 或安卓;

DSP Buffer Size: 调整DSP缓冲区大小优化延迟和性能;

Max Virutal/Real Volice Count: 同时播放的虚拟/真实声音的数量;

DisableAudio: 警用音频;

Audio Source组件:

Audio Clip:声音片段。指定需要播放的音频文件。

Output: 音频剪辑通过音频混合器输出。

Play On Awake:游戏运行起来后就开始播放。

Mute:静音。

Loop:是否循环播放。

Priority: 播放的优先级,0最高,256最低。

Volume:音量。

Pitch:音调。改变音调(Pitch)值,可以减速/加速音频剪辑的播放。1是正常播放速度。

Stereo Pan:立体声(-1左声道, 1右声道)

Spatial Blend:空间混合,设置声音是2D声音,还是3D声音。3D声音距离音源的距离会影响听到声音的大小,2D声音不会影响。

Spread: (3D)立体声在扬声器空间中的传播速度;

Volume Rolloff:对数模式、线性模式、自定义模式;

Min/Max Distance: 衰减距离的开始结束,最小距离(声音保持最大量),最大距离(不再衰减) 。

常用的开始播放、停止播放、暂停播放方法:

 public class Test
{
public AudioSource audioSource; private void Start()
{
audioSource.Play();//开始播放
audioSource.Stop();//停止播放
audioSource.Pause();//暂停播放
}
}

 AudioSource.PlayClipAtPoint(AudioClip,Vector3,float):在世界坐标系中指定一个位置播放声音片段。

AudioClip:需要播放的声音片段。

Vector3:播放声音片段的位置。

float:音量。

使用AudioSource.PlayClipAtPoint播放声音,会自动生成一个名为"One shot audio"的物体,并自动添加了AudioSource和相应的audioclip,同时播放多个声音时会生成多个同名的物体,各声音的播放互不影响,但缺点是只能设置音量,位置,不能设置loop,播放完成后,One shot audio自动销毁。

Audio Source组件及相关API的更多相关文章

  1. Rigidbody组件及相关API

    Rigidbody:刚体组件,物理类.(与Rigidbody组件相关的代码尽量都写在FixedUpdate()方法中,如果写在Update()中有可能会卡顿) 属性:Mass:质量.         ...

  2. Transform组件以及相关API

    Transform.Translate(Vector3,Space):以自身坐标系或者世界坐标系向某个方向移动物体. Vector3:表示方向和移动的距离. Space:空间.枚举类型,用来确定坐标系 ...

  3. MeshRenderer组件及相关API

    MeshRenderer:网格过滤器,用于"渲染"显示模型. Cast Shodows:是否投射阴影.(on:开.off:关) Receive Shodows:是否接收阴影. Ma ...

  4. react第十七单元(redux和组件之间的通信,react-redux的相关api的用法)

    第十七单元(redux和组件之间的通信,react-redux的相关api的用法) #课程目标 什么是redux-redux react-redux的作用是什么 react-redux如何应用 #知识 ...

  5. [原创]java WEB学习笔记44:Filter 简介,模型,创建,工作原理,相关API,过滤器的部署及映射的方式,Demo

    本博客为原创:综合 尚硅谷(http://www.atguigu.com)的系统教程(深表感谢)和 网络上的现有资源(博客,文档,图书等),资源的出处我会标明 本博客的目的:①总结自己的学习过程,相当 ...

  6. 构建简单的 C++ 服务组件,第 1 部分: 服务组件体系结构 C++ API 简介

    构建简单的 C++ 服务组件,第 1 部分: 服务组件体系结构 C++ API 简介 熟悉将用于 Apache Tuscany SCA for C++ 的 API.您将通过本文了解该 API 的主要组 ...

  7. OC中并发编程的相关API和面临的挑战

    OC中并发编程的相关API和面临的挑战(1) 小引 http://www.objc.io/站点主要以杂志的形式,深入挖掘在OC中的最佳编程实践和高级技术,每个月探讨一个主题,每个主题都会有几篇相关的文 ...

  8. react第十六单元(redux的认识,redux相关api的掌握)

    第十六单元(redux的认识,redux相关api的掌握) #课程目标 掌握组件化框架实现组件之间传参的几种方式,并了解两个没有任何关系组件之间通信的通点 了解为了解决上述通点诞生的flux架构 了解 ...

  9. 恶意软件开发——内存相关API

    一.前言 Windows操作系统的内存有三种属性,分别为:可读.可写.可执行,并且操作系统将每个进程的内存都隔离开来,当进程运行时,创建一个虚拟的内存空间,系统的内存管理器将虚拟内存空间映射到物理内存 ...

随机推荐

  1. Linux系列教程(二)——Linux系统安装(手把手学安装centos6.8)

    在上一篇博客我们简单的介绍了Linux系统的起源,这篇博客我们将通过图示一步一步教大家如何安装Linux系统.注意这里我们选择安装的Linux系统是其一种发行版本 CentOS,这里给大家普及一个概念 ...

  2. Unity Shader - 消融效果原理与变体

    基本原理与实现 主要使用噪声和透明度测试,从噪声图中读取某个通道的值,然后使用该值进行透明度测试. 主要代码如下: fixed cutout = tex2D(_NoiseTex, i.uvNoiseT ...

  3. 61、web框架

    每个编程语言都有它自己的框架,它是我们做项目总重要的一部分.python最重要的框架为django,到底什么是框架,今天先来了解了解 一.http协议 1.HTTP简介 HTTP协议是Hyper Te ...

  4. 优先队列(存储结构数组)--Java实现

    /*优先队列--是对队列的一种改进 *要存储的数据存在优先级--数值小的优先级高--在队头 *优先队列的实现 *1.数组:适合数据量小的情况(没有用rear+front实现) *优先队列头在items ...

  5. LeetCode 64. Minimum Path Sum(最小和的路径)

    Given a m x n grid filled with non-negative numbers, find a path from top left to bottom right which ...

  6. 五分钟上手Markdown

    Markdown是一种可以使用普通文本编辑器编写的标记语言,通过简单的标记语法,它可以使普通文本内容具有一定的格式.------百度百科 话不多说,开始发车!总共10个标签,五分钟足矣,毕竟基本没难度 ...

  7. js 判断当前是什么浏览器

    function getExplorer() { var explorer = window.navigator.userAgent; //ie if (explorer.indexOf(" ...

  8. left join 条件位置问题

    表一:

  9. 本表触发更新modifytime,跨表更新modifytime 触发器

    一.每行有改动,则触发更新modifytime SQL> create table test(id int, name varchar(10), crdate date, udate date) ...

  10. Java基础笔记3

    控制语句 1. if语句 if(条件){ //如果条件成立,则运行该大括号内的内容. } if(条件){ //如果条件成立,则运行该大括号内的内容. }else{ //如果条件不成立,则运行该大括号内 ...