下面通过代码给大家介绍Unity常用音频操作类,具体代码如下所示:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
|
using UnityEngine; using System.Collections; public class AudioPlay : MonoBehaviour { public static AudioPlay Instance; public AudioClip[] FuChuAudio; public AudioSource FCAudio; // public AudioSource BabyAudio; // Use this for initialization void Awake() { Instance = this ; } void Start () { } // Update is called once per frame void Update () { } /// <summary> /// 播放某个音频 /// </summary> /// <param name="i"></param> public void playAudio( int i) { FCAudio.clip = FuChuAudio[i]; FCAudio.Play(); } /// <summary> /// 停止播放所有的音频 /// </summary> public void StopplayAll() { for ( int i= 0; i< FuChuAudio.Length; i++) { FCAudio.clip = FuChuAudio[i]; FCAudio.Stop(); } } /// <summary> /// 停止播放某个音频 /// </summary> /// <param name="i"></param> public void StopplayOne( int i) { FCAudio.clip = FuChuAudio[i]; FCAudio.Stop(); } /// <summary> /// 循环播放某个音频 /// </summary> /// <param name="i"></param> public void playLoop( int i) { FCAudio.clip = FuChuAudio[i]; FCAudio.loop = true ; //设置声音为循环播放 ; FCAudio.Play(); } } |
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
|
/***将这个脚本挂载到一个空物体上,并且给它添加 AudioSource 组件*/ using System.Collections; using System.Collections.Generic; using UnityEngine; /// <summary> /// 控制所有音乐的管理类 /// </summary> public class AudioManager : MonoBehaviour { //将要轮流播放的音乐组 public AudioClip[] audioGroup; //当前播放的是谁 private int playingIndex; //是否允许播放音乐 private bool canPlayAudio; //AudioSource组件 private AudioSource audioSource; //----------------------------------------------------- void Start() { audioSource = this .GetComponent<AudioSource>(); canPlayAudio = true ; playingIndex = 0; } //----------------------------------------------------- void Update() { if (canPlayAudio) { PlayAudio(); canPlayAudio = false ; } if (!audioSource.isPlaying) { playingIndex++; if (playingIndex >= audioGroup.Length) { playingIndex = 0; } canPlayAudio = true ; } } //----------------------------------------------------- private void PlayAudio() { audioSource.clip = audioGroup[playingIndex]; audioSource.Play(); } //----------------------------------------------------- } |
到此这篇关于Unity常用音频操作类示例代码的文章就介绍到这了,更多相关Unity音频内容请搜索服务器之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持服务器之家!
原文链接:https://www.cnblogs.com/qq2806933146xiaobai/p/15038743.html