在制作游戏的过程中,我们经常要给不同的事件添加不同的音效,以下来介绍以下怎么在unity中用纯脚本的方式给游戏添加音效。
首先把所有的音效文件都放到Assets/Resources/music文件夹下。(需要.wav)格式的音频。
因为我是要给游戏角色的不同动作添加音效,所以我在Player的脚本里添加了以下代码,并把脚本添加到Player对象上。(可以根据需求把脚本添加到不同对象上,也可以编写独立的MusicPlayer脚本)
public class Player : MonoBehaviour
{
.....
//音源AudioSource相当于播放器,而音效AudioClip相当于磁带
public AudioSource music;
public AudioClip jump;//这里我要给主角添加跳跃的音效
private void Awake()
{
...
//给对象添加一个AudioSource组件
music = gameObject.AddComponent<AudioSource>();
//设置不一开始就播放音效
music.playOnAwake = false;
//加载音效文件,我把跳跃的音频文件命名为jump
jump = Resources.Load<AudioClip>("music/jump");
}
void Update()
{
...
if (Input.GetKeyDown(KeyCode.UpArrow))//如果输入↑
{
....
//把音源music的音效设置为jump
music.clip = jump;
//播放音效
music.Play();
}
....
}
}
然后在其他需要音效的地方用添加的方法编写脚本就可以了。