您的位置:首页 > 其它

iTween基础之Audio(音量和音调的变化)

2016-11-06 14:43 155 查看
一、基础介绍

AudioTo:改变声音的音量和音调到指定的数值。

AudioFrom:将声音的音量和音调从给的数值变化到原始的数值;
 

AudioUpdate:类似于AudioTo,在Update()方法或循环环境中调用。提供每帧改变属性值的环境。不依赖于EasrType
Stab:播放AudioClip一次,可以不用手动加载AudioSource组件

通过iTween实现声音音量和音调的渐变效果

二、基础属性

基础属性比较简单直接上代码

首先是AudioTo的

[csharp] view
plain copy

 





void Start () {  

  

       //播放的声音对象  

       AudioSource tempSource = gameObject.AddComponent<AudioSource>();  

       tempSource.loop = true;  

       tempSource.clip = soundEnd;  

       tempSource.volume = 1;  

       tempSource.Play();  

       //键值对儿的形式保存iTween所用到的参数  

       Hashtable args = new Hashtable();  

  

       //声音  

       args.Add("audiosource", tempSource);  

       //音量  

       args.Add("volume", 0);  

       //音调  

       args.Add("pitch", 0);  

  

       //变化的时间  

       args.Add("time", 10f);  

       //延迟执行时间  

       args.Add("delay", 0.1f);  

  

       //这里是设置类型,iTween的类型又很多种,在源码中的枚举EaseType中  

       args.Add("easeType", iTween.EaseType.easeInOutExpo);  

       //三个循环类型 none loop pingPong (一般 循环 来回)     

       //args.Add("loopType", "none");  

       //args.Add("loopType", "loop");    

       args.Add("loopType", iTween.LoopType.pingPong);  

  

       //处理播放过程中的事件。  

       //开始播放时调用AnimationStart方法,5.0表示它的参数  

       args.Add("onstart", "AnimationStart");  

       args.Add("onstartparams", 5.0f);  

       //设置接受方法的对象,默认是自身接受,这里也可以改成别的对象接受,  

       //那么就得在接收对象的脚本中实现AnimationStart方法。  

       args.Add("onstarttarget", gameObject);  

  

  

       //播放结束时调用,参数和上面类似  

       args.Add("oncomplete", "AnimationEnd");  

       args.Add("oncompleteparams", "end");  

       args.Add("oncompletetarget", gameObject);  

  

       //播放中调用,参数和上面类似  

       args.Add("onupdate", "AnimationUpdate");  

       args.Add("onupdatetarget", gameObject);  

       args.Add("onupdateparams", true);  

  

       iTween.AudioTo(btnBegin, args);  

}  

     

     

   //动画开始时调用  

   void AnimationStart(float f)  

   {  

       Debug.Log("start :" + f);  

   }  

   //动画结束时调用  

   void AnimationEnd(string f)  

   {  

       Debug.Log("end : " + f);  

  

   }  

   //动画中调用  

   void AnimationUpdate(bool f)  

   {  

       Debug.Log("update :" + f);  

         

   }  

然后是Stab的代码

[csharp] view
plain copy

 





void Start () {  

       

  

        //键值对儿的形式保存iTween所用到的参数  

        Hashtable stabArgs = new Hashtable();  

  

        //要播放的音源  

        stabArgs.Add("audioclip", soundTanover);  

        //播放的音量  

        stabArgs.Add("volume", 1);  

        //播放到指定的AudioSource上(可缺省)  

        //AudioSource tempSource = gameObject.AddComponent<AudioSource>();  

        //stabArgs.Add("audiosource", tempSource);  

        //设定声音的音调  

        stabArgs.Add("pitch",1);  

        //延时播放  

        stabArgs.Add("delay", 0);  

        //处理播放过程中的事件。  

        //开始播放时调用AnimationStart方法,5.0表示它的参数  

        stabArgs.Add("onstart", "AnimationStart");  

        stabArgs.Add("onstartparams", 5.0f);  

        //设置接受方法的对象,默认是自身接受,这里也可以改成别的对象接受,  

        //那么就得在接收对象的脚本中实现AnimationStart方法。  

        stabArgs.Add("onstarttarget", gameObject);  

  

  

        //播放结束时调用,参数和上面类似  

        stabArgs.Add("oncomplete", "AnimationEnd");  

        stabArgs.Add("oncompleteparams", "end");  

        stabArgs.Add("oncompletetarget", gameObject);  

  

        //播放中调用,参数和上面类似  

        stabArgs.Add("onupdate", "AnimationUpdate");  

        stabArgs.Add("onupdateparams", true);  

        stabArgs.Add("onupdatetarget", gameObject);  

          

  

        iTween.Stab(gameObject, stabArgs);  

  

    }  

      

      

    //动画开始时调用  

    void AnimationStart(float f)  

    {  

        Debug.Log("start :" + f);  

    }  

    //动画结束时调用  

    void AnimationEnd(string f)  

    {  

        Debug.Log("end : " + f);  

  

    }  

    //动画中调用  

    void AnimationUpdate(bool f)  

    {  

        Debug.Log("update :" + f);  

          

    }  
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: