相关组件:Audio Listener和Audio Source
添加循环播放的背景音乐,添加Audio Source组件,将音乐文件拖到AudioClip属性里,勾选Loop循环播放
音效
播放循环的声音
using UnityEngine;
public class Movement : MonoBehaviour {
…
public AudioClip idle;//待机音效
public AudioClip driving;//开转音效
void Update () {
//获取到玩家的键盘输入
float v = Input.GetAxis("Vertical" + player);//w s
float h = Input.GetAxis("Horizontal"+ player);//a d
…
if(v == 0) //如果没有前后移动,播放待机的声音
{
if(GetComponent<AudioSource>().clip != idle) //如果当前播放的剪辑 不是 待机 才进行切换
{
//播放待机的声音
GetComponent<AudioSource>().clip = idle;//切换待机剪辑
GetComponent<AudioSource>().Play();//播放
}
}
else //播放开车的声音
{
if (GetComponent<AudioSource>().clip != driving) //如果当前播放的剪辑 不是 开车 才进行切换
{
//播放开车的声音
GetComponent<AudioSource>().clip = driving;//切换开车剪辑
GetComponent<AudioSource>().Play();//播放
}
}
}
}
播放不循环的声音
public class Shoot : MonoBehaviour {
public AudioClip shoot;//射击的声音
…
void Update () {
if (Input.GetKeyDown(key))
{
…
//参数:1、播放的声音,2、声音的位置
AudioSource.PlayClipAtPoint(shoot,transform.position);
}
}
}