Unity3d 怎么从脚本把unity audiosourcee的AudioClip换音乐

(非注册用户请填昵称)
(非注册用户请留空)
您还没有登录,请或程序写累了,就来玩玩酷跑小游戏吧,嘿嘿。
雨松MOMO送你一首歌曲,嘿嘿。
Unity3D研究院之详解游戏开发音频的播放(十五)
Unity3D研究院之详解游戏开发音频的播放(十五)
围观61293次
编辑日期: 字体:
游戏音频的播放在任何游戏中都占据非常重要的地位,音频的播放还可以分为两种,一种为游戏音乐,另一种为游戏音效。前者适用于较长的音乐,如游戏背景音乐。第二种试用与比较短的游戏音乐,如开***,打怪 时“砰砰”一瞬间播放的游戏音效。今天MOMO将用下面的例子带盆友们去剖析Unity3D游戏音乐与音效的播放。
Unity3D游戏引擎一共支持4个音乐格式的文件
适用于较短的音乐文件可用作游戏打斗音效
适用于较短的音乐文件可用作游戏打斗音效
适用于较长的音乐文件可用作游戏背景音乐
适用于较长的音乐文件可用作游戏背景音乐
在场景中创建一个空的游戏对象。
GameObject -& CreateEmpty
创建成功后我命名为audio。
给audio添加一个AudioSource属性,这个属性非常的重要,Unity播放音乐主要就是要靠这个东西。
Component -& Audio – & Audio Source。
找一个音乐文件,我这里使用了一个.mp3音乐文件,我命名为0.mp3 如下图所示将它拖动到右侧Audio Clip处。
我们发现 Audio Source 有很多设置的属性,那么MOMO将一些比较重要的属性诺列出来。
AudioClip :声音片段,还可以在代码中去动态的截取音乐文件。
Mute : 是否静音
Bypass Effects: 是否打开音频特效
Play On Awake: 开机自动播放
Loop:循环播放
Volume: 声音大小,取值范围0.0 到 1.0
Pitch:播放速度,取值范围在 -3 到 3 之间 设置1 为正常播放,小于1 为减慢播放 大于1为加速播放。创建一个脚本我命名为audio.cs 用来音乐的播放。本章将实现3个按钮 点击实现 播放音乐、 停止音乐、 暂停音乐 ,与一个横向拖动条通过手指的拖动实现动态修改音乐声音。
12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364
using UnityEngine;using System.Collections;&public class audio : MonoBehaviour {&&&&&//音乐文件&&&&public AudioSource music;&&&&//音量&&&&public float musicVolume; &&&&&void Start() {&&
//设置默认音量&&
musicVolume = 0.5F;&&&&} void OnGUI() {&
//播放音乐按钮
if (GUI.Button(new Rect(10, 10, 100, 50), "Play music"))&&{&
//没有播放中
if (!music.isPlaying){
//播放音乐
music.Play();
//关闭音乐按钮
if (GUI.Button(new Rect(10, 60, 100, 50), "Stop music"))&&{&
if (music.isPlaying){
//关闭音乐
music.Stop();
//暂停音乐
if (GUI.Button(new Rect(10, 110, 100, 50), "Pause music"))&&{
if (music.isPlaying){
//暂停音乐
//这里说一下音乐暂停以后
//点击播放音乐为继续播放
//而停止以后在点击播放音乐
//则为从新播放
//这就是暂停与停止的区别
music.Pause();
//创建一个横向滑动条用于动态修改音乐音量
//第一个参数 滑动条范围
//第二个参数 初始滑块位置
//第三个参数 起点
//第四个参数 终点
musicVolume = GUI.HorizontalSlider (new Rect(160, 10, 100, 50), musicVolume, 0.0F, 1.0F);&
//将音量的百分比打印出来
GUI.Label(new Rect(160, 50, 300, 20), "Music Volueme is " + (int)(musicVolume * 100) + "%");&
if (music.isPlaying){
//音乐播放中设置音乐音量 取值范围 0.0F到 1.0
music.volume = musicVolume;
将audio.cs 绑定在摄像头上,将audio游戏对象拖动赋值给Music 这个AudioSource这个对象。这里强调一下AudioListenr ,它音频***器,用来***音乐文件的播放。这是一个重要的属性,一定要勾选,只有勾选后才可以进行音乐的播放。
build and run 运行我们这个游戏Demo,一切功能完美实现,哇咔咔~
最后欢迎各位盆友可以和MOMO一起讨论Unity3D游戏开发,大家一起学习一起进步,哇咔咔~~~ 附上Unity3D工程的下载地址,Xcode项目我就不上传了,须要的自己导出。今天心里有点不高兴! 。就这样晚安~
下载地址:
最近有朋友问我如何切换场景Unity音频不关闭,其实做法非常简单。如下图所示,你的声音组件会放在声音对象中,因为切换场景的时候声音对象会自动销毁,所以声音就会关闭。所以如果你的声音组件不被销毁掉,哪么你的声音就会连续播放了。
代码就是使用DontDestroyOnLoad()方法就可以切换场景不施放对象了。
1234567891011121314151617181920
using UnityEngine;using System.Collections;&public class Test : MonoBehaviour {& public GameObject audio; void Start ()
DontDestroyOnLoad(audio); }& void OnGUI() {
if(GUILayout.Button("NEXT"))
Application.LoadLevel("Scene1");
本文固定链接:
转载请注明:
雨松MOMO提醒您:亲,如果您觉得本文不错,快快将这篇文章分享出去吧 。另外请点击网站顶部彩色广告或者捐赠支持本站发展,谢谢!
作者:雨松MOMO
专注移动互联网,Unity3D游戏开发
如果您愿意花10块钱请我喝一杯咖啡的话,请用手机扫描二维码即可通过支付宝直接向我捐款哦。
您可能还会对这些文章感兴趣!Unity3d5.0之后关于游戏音乐的管理-中国学网-中国IT综合门户网站-提供健康,养生,留学,移民,创业,汽车等信息
Unity3d5.0之后关于游戏音乐的管理
来源:互联网 更新时间: 8:03:10 责任编辑:鲁晓倩字体:
首先这里我们只要把这个游戏管理器做成预制件,然后写一个通用模板类(包括关闭音乐和开启音乐,关闭音效和开启音效,和游戏存档来开启关闭音乐)挂在这个预制件上面。通用模板类:using UnityEusing System.Cpublic class AudioPlayer : MonoBehaviour{& & static public AudioPlayer s_Instance =&& & static public bool IsRetargetOK=& & //播放音效一次& & static public void PlayAudioOnce(string name){& & & & if (PlayerPrefs.HasKey("Audio") && PlayerPrefs.GetInt("Audio") == 0) {& & & & & && & & & } //这里是存档来开启音乐& & & & if (s_Instance != null){& & & & & & AudioSource[] audioSource = s_Instance.gameObject.GetComponents&AudioSource&();& & & & & & bool isPlayOk =& & & & & & foreach (var item in audioSource){& & & & & & & & if (item.clip != null && item.clip.name == name&&item.isPlaying){& & & & & & & & & & isPlayOk =& & & & & & & & & && & & & & & & & }& & & & & & }& & & & & & if (isPlayOk){& & & & & & & & audioSource[s_Instance.currentAudioIndex].clip = Util.LoadResource&AudioClip&("Sounds/" + name + ".mp3"); &//这里是加载你的游戏音乐,这里自己写了一个动态加载资源的办法,方便后面资源打包
相关文章:
上一篇文章:下一篇文章:
最新添加资讯
24小时热门资讯
Copyright © 2004- All Rights Reserved. 中国学网 版权所有
京ICP备号-1 京公网安备02号

参考资料

 

随机推荐