unity3d v5.1.2 如何顺序播放音乐
1 public AudioSource music; 2 AudioClip[] clips; 3 4 int[] clipSeq; 5 int clipIndex; 6 int clipMax; 7 8 public delegate void musicOverCallback(); 9 public void playMusicClips (){ 10 music.clip = clips [clipSeq[clipIndex]]; 11 music.Play (); 16 StartCoroutine(haveNextMusic(music.clip.length, playMusicClips)); 17 } 18 private IEnumerator haveNextMusic(float time, musicOverCallback callback){ 19 yield return new WaitForSeconds (time); 20 clipIndex++; 21 if (clipIndex < clipMax) { 22 23 callback (); 24 } 25 } 26
本来是想用语音播放100,99等数字,但我不可能做上百个wav吧,只好把100拆成一百,需要2个wav,并按顺序播放出来
不知道有没有更简单的方法
最终用协程搞定了,还有个问题就是,这种方法没办法很好地停止上一个数字的语音播报,需要加一些其他代码来做控制
呃……好蠢的方法,不知道还有没有更好的:(