本文概述
- 音频监听器
- 音源
- 播放声音
Unity可以导入大多数标准音频文件格式, 并具有在3D空间中播放声音的功能, 还可以选择应用回声和过滤等效果。即使是Unity, 也可以从用户机器上任何可用的麦克风录制音频, 以供玩游戏或存储和传输时使用。
Unity中有两个与音频有关的组件;他们是:
- 音频监听器
- 音源
音频监听器 音频侦听器是每次创建场景时自动附加到主摄像机的组件。它没有任何属性, 因为它的唯一工作就是充当感知点。
该组件收听场景中播放的所有音频并将其传输到系统的扬声器。它充当游戏的耳朵。场景中只有一个AudioListener才能正常运行。
文章图片
音源 音频源是你将附加到GameObject使其播放声音的主要组件。这是负责播放声音的组件。
若要添加音频源组件, 请选择一个GameObject, 然后转到” 检查器” 选项卡。单击添加组件, 然后搜索音频源。
文章图片
选择音频源。
【Unity声音处理介绍和示例图解】当通过调音台, 代码或默认情况下唤醒时, 音频源将播放音频剪辑。
音频剪辑是一种声音文件, 已加载到AudioSource中。它可以是任何标准音频文件, 例如.wav, .mp3等。音频剪辑本身就是一个组件。
文章图片
播放声音 让我们添加一个在单击时播放声音的按钮。为此, 首先创建一个精灵并执行一种颜色。在这里, 我正在创建一个圆形精灵并将其设为红色。
文章图片
现在, 将” 音频源” 组件附加到该圆形精灵上。
文章图片
现在, 你必须导入一个音频文件。在这里, 我正在下载成功声音。要下载它, 请单击此处。
将此声音文件拖到Assets中。
将此声音剪辑从Assets拖动到精灵的音频源组件中的” 音频剪辑” 插槽。
文章图片
- 取消选中音频源属性中的” 唤醒时播放” 。否则, 声音会在游戏开始时立即播放。
文章图片
- 创建一个名为” SuccessSound” 的新脚本并将其打开。
- 在此脚本文件中, 我们必须设置方法以检测被单击的对象。 MonoBehaviour为我们提供了我们所需的方法, 名为onMouseDown。每当鼠标在该gameObject的对撞机范围内单击时, 都会调用此方法。
文章图片
- 我们将不需要一个刚体。我们也不需要通过代码访问此对撞机。它只是必须存在, 该方法才能起作用。
- 最后, 将以下代码复制到脚本文件SuccessSound.cs中:
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class SuccessSound : MonoBehaviour
{
AudioSource mySource;
void OnMouseDown() {
mySource.Play();
Debug.Log("Clicked!");
}
// Use this for initialization
void Start () {
mySource = GetComponent<
AudioSource>
();
}
}
将此脚本附加到你的圈子脚本。现在玩游戏。单击按钮(红色圆圈精灵)应向控制台显示一条消息, 并且你会听到成功的声音。
文章图片
推荐阅读
- Unity协程介绍和使用示例详解
- Unity控制台日志输出介绍和用法示例
- Unity GameObject销毁介绍和用法示例
- Unity预制件和实例化解释和示例
- 了解Unity的碰撞(详细介绍图解)
- c#开发移动APP-Xamarin入门剖析
- c#开发移动APP-Xamarin入门扩展
- c#开发移动APP-Xamarin入门扩展剖析
- Appium 1.9.1 启动报错 Fatal TypeError: Class constructor BaseDriver cannot be invoked without 'new&#