Unity 播放声音
Posted DaLiangChen
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Unity 播放声音相关的知识,希望对你有一定的参考价值。
Unity中支持的音频格式
格式 | 用途 |
AIFF | 适用于较短的音乐文件可用作游戏打斗音效 |
WAV | 适用于较短的音乐文件可用作游戏打斗音效 |
MP3 | 适用于较长的音乐文件可用作游戏背景音乐 |
OGG | 适用于较长的音乐文件可用作游戏背景音乐 |
Unity 中播放声音简单案例
1.GameObject -> CreateEmpty 创建成功后我命名为audio
2.给audio添加一个Audiosource属性,这个属性非常的重要,Unity播放音乐主要就是要靠这个东西
3.找一个音乐文件,我这里使用了一个.mp3音乐文件,我命名为0.mp3 如下图所示将它拖动到右侧Audio Clip处
4.Audio Source 的重要属性如下
名称 | 描述 |
AudioClip | 声音片段,还可以在代码中去动态的截取音乐文件 |
Mute | 是否静音 |
Bypass Effects | 是否打开音频特效 |
Play On Awake | 开机自动播放 |
Loop | 循环播放 |
Volume | 声音大小,取值范围0.0 到 1.0 |
Pitch | 播放速度,取值范围在 -3 到 3 之间 设置1 为正常播放,小于1 为减慢播放 大于1为加速播放 |
代码控制声音播放
1.新建一个脚本,命名 “TestAudio.cs” (代码如下)
using UnityEngine;
public class TestAudio : MonoBehaviour
{
//音乐文件
public AudioSource music;
/// <summary>播放放音乐</summary>
private void playMusic()
{
if (music!=null&&!music.isPlaying)
{
music.Play();
}
}
/// <summary>关闭音乐播放</summary>
private void stopMusic()
{
if (music != null && !music.isPlaying)
{
music.Stop();
}
}
/// <summary>暂停音乐播放</summary>
private void pauseMusic()
{
if (music != null && !music.isPlaying)
{
music.Pause();
}
}
/// <summary>
/// 设置播放音量
/// </summary>
/// <param name="volume"></param>
private void setMusicVolume(float volume)
{
if (music != null && !music.isPlaying)
{
music.volume = volume;
}
}
}
官方API:https://docs.unity3d.com/cn/2020.2/ScriptReference/AudioSource.html
Unity QQ交流群:299412191 欢迎对Unity感兴趣的同学加入.
以上是关于Unity 播放声音的主要内容,如果未能解决你的问题,请参考以下文章
如何仅在 Unity Vuforia 中检测到标记时播放声音