Cocos Creator中AudioSource組件的使用
前言
在Cocos Creator游戲開(kāi)發(fā)中, 為了改善用戶體驗(yàn),通常會(huì)使用聲音特效。
一、cc.AudioSource組件簡(jiǎn)介和基礎(chǔ)使用
1:AudioSource組件是音頻源組件, 發(fā)出聲音的源頭; 2: AudioSource組件面板: clip: 聲源的播放的音頻對(duì)象: AudioClip, mp3, wav, ogg, volume: 音量大小, [0, 1]百分比 mute: 是否靜音; Loop: 是否循環(huán)播放; Play on Load: 是否在組件加載的時(shí)候播放; Preload: 是否預(yù)先加載;
二、cc.AudioClip對(duì)象
1: 音頻剪輯對(duì)象,支持的格式有mp3, wav, ogg 2: 可以在編輯器上手動(dòng)關(guān)聯(lián),生成AudioCip對(duì)象; 3: 可以通過(guò)代碼加載AudioCip; (后續(xù)資源加載模塊詳細(xì)講解);
三、AudioSource代碼使用
1: 代碼中獲得cc.AudioSource組件: 編輯器關(guān)聯(lián); 代碼獲取組件; 2: AudioSource 主要的方法: play(); 播放音頻; stop(); 停止聲音播放; pause(); 暫停聲音播放; resume(); 恢復(fù)聲音播放; rewind(); 重頭開(kāi)始播放; 其它接口見(jiàn)文檔;
3: AudioSource代碼主要屬性: loop: 是否循環(huán)播放 isPlaying: 是否正在播放; mute: 是否靜音; 如果要在開(kāi)始的時(shí)候設(shè)置某些屬性,可以放到start函數(shù)里面;

1. ?` ?start () {`
2. ?` ? ? ? ?let audioSource : cc.AudioSource = this.node.getChildByName("AudioNode").getComponent(cc.AudioSource);`
3. ?` ? ? ? ?audioSource.volume = 0.5;`
5. ?` ? ? ? ?this.scheduleOnce(function(){`
6. ?` ? ? ? ? ? ?console.log(audioSource.isPlaying);`
7. ?` ? ? ? ? ? ?audioSource.pause(); ? ? // 暫停播放`
8. ?` ? ? ? ?}, 1);`
10. ?` ? ? ? ?this.scheduleOnce(function(){`
11. ?` ? ? ? ? ? ?console.log("2",audioSource.isPlaying);`
12. ?` ? ? ? ? ? ?audioSource.resume(); ? // 恢復(fù)播放`
13. ?` ? ? ? ?}, 2);`
15. ?` ? ? ? ?this.scheduleOnce(function(){`
16. ?` ? ? ? ? ? ?console.log("3",audioSource.isPlaying);`
17. ?` ? ? ? ? ? ?audioSource.rewind(); ? // 從頭開(kāi)始播放`
18. ?` ? ? ? ?}, 3);`
20. ?` ? ? ? ?this.scheduleOnce(function(){`
21. ?` ? ? ? ? ? ?console.log("4",audioSource.isPlaying);`
22. ?` ? ? ? ? ? ?audioSource.stop(); ? // 停止播放`
23. ?` ? ? ? ?}, 4);`
25. ?` ? ?}`