如需查看具体项目例子,可以去各大应用市场下载“萌萌鸡”app。体验功能!
第一步:先要学会怎么播放语音。这个简单
讲解Vuforia播放音频
第二步:知道这个方法
public AudioSource music;
music.Clip=“”;//获取到音频文件AudioClip
按u3d官方文档上描述的使用Resources.Load大杀器方法加载相对的本地资源,格式:Resources.Load("在Assets之下新建的Resources文件夹下的路径,扩展名必需省略",typeof(T)) as T;或 Resources.Load("在Assets之下新建的Resources文件夹下的路径,扩展名必需省略");
Resources.LoadAssetAtPath("Assets/Audio/bg.wav",typeof(AudioClip)) as AudioClip
或Resources.LoadAssetAtPath<</span>AudioClip> ("Assets/Audio/bg.wav");此种路径是Assets之下的路径,扩展名不可省
(1)获取本地的音频文件,我这里使用的是第一种
AudioClip audioClip=(AudioClip)Resources.Load("1990", typeof(AudioClip))as AudioClip;//调用Resources方法加载AudioClip资源;
//1990是unity里面本地的音频名字,拖入音频进入Unity既可
(2)获取网络的音频文件。需要通过www异步获取到音频的文件
/**
* 异步获取音频文件,得到AudioClip
* */
IEnumerator DownloadMovie()
{
WWW www = new WWW("http://mengmengchickin.oss-cn-shenzhen.aliyuncs.com/voice/1990.mp3");
yield return www;
music.clip = www.GetAudioClip(true, true);//音频
music.Play();
}
在识别到target的时候调用:StartCoroutine(DownloadMovie()):即可异步获取到音频文件AudioClip
再调用music.clip方法可以播放音频文件AudioClip
还有一个问题如何判断音频是否已经播完成,响应动画?
使用music.clip.length