2014-11-26 11:56:18 asd237241291 阅读数 44580
  • Unity3D入门到精通-(3)Unity资源管理精讲

    本次系列课程的目标是让Unity3D初学者掌握Unity3d的资源管理技术进行了全面介绍,特别对AssetBundle资源如何进行更新,以及加载(依赖资源加载)进行了系统的介绍。 适合对象:Unity初学开发者,Unity中级开发者,网络程序开发者,所有对游戏开发有兴趣的人员。 学习条件:有一定的Unity3D基础,了解C#的基本开发知识。

    4641 人正在学习 去看看 张刚

原创文章如需转载请注明:转载自 脱莫柔Unity3D学习之旅 QQ群:【Unity3D(AR/VR) 334163814】【Unity3D(游戏) 119706192】 本文链接地址: 多种播放音效的方式


AudioListener组件默认绑定在主摄像机上,这个组件的功能相当于耳朵,用来听声音的。

1.背景音乐

选中音乐文件,建议不勾选3D Sound选项。
在Main Camera下创建一个空物体,添加AudioSound组件,AudioClip选择要播放的音乐。
Loop必须勾选,循环播放。
勾选PlayOnAwake,场景一进来就开始播放,如果不勾选找个合适时机Play()。

2.NGUI的UIPlaySound

在摄像机直接添加个AudioSource组件,这个组件不挂任何AudioClip。(UIPlaySound将在这个组件上播放音效,在这里调整Volume能控制所有UIPlaySound的音量大小。UIPlaySoundVolume属性只控制自己的音量,最后的音量是这两个音量值相乘。)

3.碰撞触发的音效

public AudioClip AC;
OnCollisionEnter(Collision collision)
//或者OnTriggerEnter(Collider collider)
{
    //被撞得物体原点发出声音(第二个参数用来设置发出声音的世界坐标,不要离AudioListener太远)
    AudioSource.PlayClipAtPoint(AC, transform.localPosition);
}

4.Animation动作回调的音效

public class AnimationCallSound : MonoBehaviour 
{
    //防止同一个动作多次注册回调
    public static List<string> isHaveevent = new List<string>();

    //调用事件
    public float EventTime;
    //要播放的音效(必须绑定一个AudioSource组件)
    public AudioSource AS;

	void Start () 
    {
        if (AS == null)
            Debug.LogError("没有绑定音效");
        AddEvent();
        //防止场景内动作相同的物体动作同步
        Invoke("PlayAnim",Random.Range(0.1f,5.5f));
	}
    void PlayAnim()
    {
        animation.Play();
    }

	
    //给Animation动画注册回调事件
    void AddEvent()
    {
        foreach (string name in isHaveevent)
        {
            if (animation.clip.name == name)
                return;
        }
        
        AnimationEvent auidoEvent = new AnimationEvent();
        auidoEvent.time = EventTime;
        auidoEvent.functionName = "PlayAudio";

        animation.clip.AddEvent(auidoEvent);
        isHaveevent.Add(animation.clip.name);
        Debug.Log("add " + animation.clip.name + " Event!");
    }

    public void PlayAudio()
    {
        AS.Play();
    }
}


2017-08-11 16:34:58 lr123838 阅读数 603
  • Unity3D入门到精通-(3)Unity资源管理精讲

    本次系列课程的目标是让Unity3D初学者掌握Unity3d的资源管理技术进行了全面介绍,特别对AssetBundle资源如何进行更新,以及加载(依赖资源加载)进行了系统的介绍。 适合对象:Unity初学开发者,Unity中级开发者,网络程序开发者,所有对游戏开发有兴趣的人员。 学习条件:有一定的Unity3D基础,了解C#的基本开发知识。

    4641 人正在学习 去看看 张刚

unity3d的音乐部分:AudioSource、AudioClip、AudioMixer(比较新版才有的)
这里写图片描述
右键新建一个AudioSource,在设置界面关联音乐文件到AudioClip,这样跑起来就能听到声音了。Loop设置是否循环播放,Volume音效从0-1。PlayOnAwake选择是否在场景Awake就开始播放,如果是条件触发的音效就不要勾选啦,这样子需要写个脚本来控制播放。

void Start () {
    audioSource = this.GetComponent<AudioSource> ();
}
public void addVolume(){
        audioSource.volume = audioSource.volume+0.1f;
        Debug.Log (audioSource.volume);
    }

    public void subVolume(){
        audioSource.volume = audioSource.volume-0.1f;
        Debug.Log (audioSource.volume);
    }

    public void play() {
        audioSource.Play ();
    }

    public void pause(){
        audioSource.Pause ();
    }

因为博主需要尽快上手,所以并没有深入,见谅。现在的时代啊,节奏快了!

2015-04-15 23:47:04 yuxikuo_1 阅读数 1528
  • Unity3D入门到精通-(3)Unity资源管理精讲

    本次系列课程的目标是让Unity3D初学者掌握Unity3d的资源管理技术进行了全面介绍,特别对AssetBundle资源如何进行更新,以及加载(依赖资源加载)进行了系统的介绍。 适合对象:Unity初学开发者,Unity中级开发者,网络程序开发者,所有对游戏开发有兴趣的人员。 学习条件:有一定的Unity3D基础,了解C#的基本开发知识。

    4641 人正在学习 去看看 张刚

原创文章如需转载请注明:转载自 脱莫柔Unity3D学习之旅 QQ群:【Unity3D(AR/VR) 334163814】【Unity3D(游戏) 119706192】 本文链接地址: 多种播放音效的方式


AudioListener组件默认绑定在主摄像机上,这个组件的功能相当于耳朵,用来听声音的。

1.背景音乐

选中音乐文件,建议不勾选3D Sound选项。
在Main Camera下创建一个空物体,添加AudioSound组件,AudioClip选择要播放的音乐。
Loop必须勾选,循环播放。
勾选PlayOnAwake,场景一进来就开始播放,如果不勾选找个合适时机Play()。

2.NGUI的UIPlaySound

在摄像机直接添加个AudioSource组件,这个组件不挂任何AudioClip。(UIPlaySound将在这个组件上播放音效,在这里调整Volume能控制所有UIPlaySound的音量大小。UIPlaySoundVolume属性只控制自己的音量,最后的音量是这两个音量值相乘。)

3.碰撞触发的音效

  1. public AudioClip AC;  
  2. OnCollisionEnter(Collision collision)  
  3. //或者OnTriggerEnter(Collider collider)  
  4. {  
  5.     //被撞得物体原点发出声音(第二个参数用来设置发出声音的世界坐标,不要离AudioListener太远)  
  6.     AudioSource.PlayClipAtPoint(AC, transform.localPosition);  
  7. }  

4.Animation动作回调的音效

  1. public class AnimationCallSound : MonoBehaviour   
  2. {  
  3.     //防止同一个动作多次注册回调  
  4.     public static List<string> isHaveevent = new List<string>();  
  5.   
  6.     //调用事件  
  7.     public float EventTime;  
  8.     //要播放的音效(必须绑定一个AudioSource组件)  
  9.     public AudioSource AS;  
  10.   
  11.     void Start ()   
  12.     {  
  13.         if (AS == null)  
  14.             Debug.LogError("没有绑定音效");  
  15.         AddEvent();  
  16.         //防止场景内动作相同的物体动作同步  
  17.         Invoke("PlayAnim",Random.Range(0.1f,5.5f));  
  18.     }  
  19.     void PlayAnim()  
  20.     {  
  21.         animation.Play();  
  22.     }  
  23.   
  24.       
  25.     //给Animation动画注册回调事件  
  26.     void AddEvent()  
  27.     {  
  28.         foreach (string name in isHaveevent)  
  29.         {  
  30.             if (animation.clip.name == name)  
  31.                 return;  
  32.         }  
  33.           
  34.         AnimationEvent auidoEvent = new AnimationEvent();  
  35.         auidoEvent.time = EventTime;  
  36.         auidoEvent.functionName = "PlayAudio";  
  37.   
  38.         animation.clip.AddEvent(auidoEvent);  
  39.         isHaveevent.Add(animation.clip.name);  
  40.         Debug.Log("add " + animation.clip.name + " Event!");  
  41.     }  
  42.   
  43.     public void PlayAudio()  
  44.     {  
  45.         AS.Play();  
  46.     }  
  47. }  
2015-03-16 10:57:03 chinacyr 阅读数 6004
  • Unity3D入门到精通-(3)Unity资源管理精讲

    本次系列课程的目标是让Unity3D初学者掌握Unity3d的资源管理技术进行了全面介绍,特别对AssetBundle资源如何进行更新,以及加载(依赖资源加载)进行了系统的介绍。 适合对象:Unity初学开发者,Unity中级开发者,网络程序开发者,所有对游戏开发有兴趣的人员。 学习条件:有一定的Unity3D基础,了解C#的基本开发知识。

    4641 人正在学习 去看看 张刚

一:问题描述

前天打包时,碰到了这样的问题:生成android APK包时,勾选和非勾选developmentbuild选项,在真机上测试时,不同机型表现不同;



二:现象如下

三星的表现完成正常,小米和酷派却是下面的画面:即显示主相机天空盒背景,但是音乐和点击却没有问题;在点击过程中,播放粒子特效后,画面就马上恢复;


三:临时解决

找来找去,看到其他啊猿都说,这是硬件问题,我把他们的解决方法试了试也是不行!最后我就让这个场景一开始就播放一个粒子特效,然后在切换到该场景时,它就正常了!如果,你碰到了类似的问题,并且解决了,不妨留个言,告诉我吧!

2017-01-05 23:41:36 NippyLi 阅读数 2108
  • Unity3D入门到精通-(3)Unity资源管理精讲

    本次系列课程的目标是让Unity3D初学者掌握Unity3d的资源管理技术进行了全面介绍,特别对AssetBundle资源如何进行更新,以及加载(依赖资源加载)进行了系统的介绍。 适合对象:Unity初学开发者,Unity中级开发者,网络程序开发者,所有对游戏开发有兴趣的人员。 学习条件:有一定的Unity3D基础,了解C#的基本开发知识。

    4641 人正在学习 去看看 张刚

更新了一个包,发布过后遇到一个问题,用户反馈在iphone上声音小。

实质上声音是从话筒里出来的,未走扬声器。

仔细查找文档发现是PlayerSettings里的设置不当引起的。

PlayerSettings取消勾选 Prepare iOS for Recording即可

下面是Unity的API关于这个属性的解释


背景音乐设置键位

阅读数 344

没有更多推荐了,返回首页