控制音频

作者:追风剑情 发布于:2014-7-5 22:02 分类:Unity3d

Unity3D支持4种音乐格式

AIFF格式,适用于较短的音乐文件,可用作游戏打斗音效。

WAV格式,适用于较短的音乐文件,可用作游戏打斗音效。

MP3格式,适用于较长的音乐文件,可用作游戏背景音乐。

OGG格式,适用于较长的音乐文件,可用作游戏背景音乐。


一、在场景中建一个Cube,再在上面挂上AudioSource组件,并把一个音频拖到上面

Cube上挂AudioSource.png

二、在主摄像机上挂上AudioListener组件和GUIAudio.cs

挂主像机上.png

GUIAduio.cs源码如下:

  1. using UnityEngine;
  2. using System.Collections;
  3.  
  4. public class GUIAudio : MonoBehaviour {
  5.  
  6. public AudioSource music;
  7. float musicVolume;
  8.  
  9. // Use this for initialization
  10. void Start () {
  11. musicVolume = 0.5f; //设置默认音量
  12. }
  13.  
  14. void OnGUI () {
  15. //绘制播放音乐按钮
  16. if (GUI.Button (new Rect (10, 10, 100, 50), "Play music")) {
  17. if(!music.isPlaying){
  18. music.Play();
  19. }
  20. }
  21.  
  22. //绘制停止音乐按钮
  23. if (GUI.Button (new Rect (10, 60, 100, 50), "Stop music")) {
  24. if(music.isPlaying){
  25. music.Stop();
  26. }
  27. }
  28.  
  29. //绘制暂停音乐按钮
  30. if (GUI.Button (new Rect (10, 110, 100, 50), "Pause music")) {
  31. if(music.isPlaying){
  32. music.Pause();
  33. }
  34. }
  35.  
  36. musicVolume = GUI.HorizontalSlider (new Rect(160, 10, 100, 50), musicVolume, 0.0F, 1.0F);
  37.  
  38. //打印音量百分比
  39. GUI.Label (new Rect(160, 50, 300, 20), "Music Volume is "+(musicVolume * 100) + "%");
  40.  
  41. if (music.isPlaying) {
  42. //音乐播放中设置音乐音量,取值范围为0.0F~1.0F
  43. music.volume = musicVolume;
  44. }
  45. }
  46. }
三、运行效果

运行效果.png

标签: AudioSource

Powered by emlog  蜀ICP备18021003号-1   sitemap

川公网安备 51019002001593号