http://blog.csdn.net/sunshine_1984/article/details/12943979

今天研究了下Unity3d音效播放相关内容,整理下实现细节。

1,添加音效文件到Assets/Resources目录,我这里添加到Assets/Resources/audio目录了。

2,新建C# Script命名为audio

3,编写audio.cs代码如下(里面注释很清楚了):

using UnityEngine;
using System.Collections;

public class audio : MonoBehaviour {
    //音乐文件  
    public AudioSource music;
    //音量  
    public float musicVolume;  
// Use this for initialization
void Start () {
        //this.gameObject.AddComponent("AudioSource");
        music = this.gameObject.AddComponent("AudioSource") as AudioSource;
        music.clip = Resources.Load("audio/test") as AudioClip;
        music.playOnAwake = false;
        music.loop = false;
        //设置默认音量 
        musicVolume = 0.2F; 
}

// Update is called once per frame
void Update () {

}

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;
        }
    }  
}

4,关联audio.cs到Main Camera

调用手机震动器api如下:Handheld.Vibrate(); //手机的震动效果。

Unity3d之音效播放和调用手机震动的更多相关文章

  1. html5调用手机震动

    在h5里面里面,浏览器对象有个vibrate属性.顾名思义,翻译过来就是震动的意思,这个api属性方法如下: 要调用的例子 if (window.navigator.vibrate) window.n ...

  2. Delphi XE5 Android 调用手机震动

    uses Androidapi.JNI.Os, Androidapi.JNIBridge; function GetVibratorArray(const AIntArr: array of Int6 ...

  3. Delphi XE5 Android 调用手机震动(通过JObject测试是否支持震动)

    源码如下: uses Androidapi.JNI.Os, Androidapi.JNIBridge; function GetVibratorArray(const AIntArr: array o ...

  4. html5的navigator调用手机震动

    navigator.vibrate(s) 或 navigator.webkitVibrate(s),不过该属性只在安卓系统有效.

  5. OC-系统音效播放

      一.介绍 AudioToolbox.framework是一套基于C语言的框架,使用它来播放音效其本质是将短音频注册到系统声音服务(System Sound Service).System Soun ...

  6. [Unity3D]Unity+Android交互教程——让手机"动"起来

    想要用Unity实现一个二维码扫描的功能,然后网上找插件,找到一个貌似叫EasyCodeScanner,但下载下来用用,真不好使,一导入运行就报错,调好错了再运行发现点按钮没反应,反复试了几遍发现还是 ...

  7. iOS - AudioServicesPlay 短频音效播放

    前言 extern void AudioServicesPlayAlertSound(SystemSoundID inSystemSoundID) __OSX_AVAILABLE_STARTING(_ ...

  8. Unity3D音乐音效学习笔记

    对于Unity3D的音乐音效这块一直没有好好的看过,现在准备好好的研究一下,并作为一个笔记记录下. 支持格式 在游戏中,一般存在两种音乐,一种是时间较长的背景音乐,一种是时间较短的音效(比如按钮点击, ...

  9. iOS播放系统声音和震动

    在需要声音的类的.h文件中添加     #import <AudioToolbox/AudioToolbox.h>static SystemSoundID shake_sound_male ...

随机推荐

  1. Python学习教程(learning Python)--3.2 if-else分支语句

    if-else分支语句结构的特点是当conditon条件满足时,执行if下的语句块,当condition条件不满足时执行else下的语句块,也就是说根据条件来控制让某些语句执行,某些语句不被执行. i ...

  2. C 解决百度知道的一个高中题

    前言 今天看见一道百度知道上提问,是这样的. 仔细算了一下, 花了30min.才整出来了,估计现在回去参加高考,数学及格都悬.有时候想做这样的题有什么用, 学这些东西有什么意义,在这种方面浪费时间有什 ...

  3. 263. Ugly Number

    Write a program to check whether a given number is an ugly number. Ugly numbers are positive numbers ...

  4. .net 动态编译解决考勤计算问题

    由于公司实施SAP HR项目,但是SAP HR对考勤功能真的太弱化了,直接从考勤机上读取的原始打卡记录不能直接传输到HR系统里面,因为SAP HR不能识别那些多余的打卡记录,而且必须把打卡记录进行成组 ...

  5. SQL开发 循序渐进

    吉庆师傅整理: http://www.itpub.net/thread-1418150-1-1.html

  6. oracle 修改密码,解锁

    运行里面输入:sqlplus /nolog登录 connect sys/as sysdba修改密码:alter user sys identified by 密码; --(你的是change_on_i ...

  7. Partition分组使用和行列转换

    CREATE TABLE score ( name NVARCHAR(20), subject NVARCHAR(20), score INT ) --2.插入测试数据 INSERT INTO sco ...

  8. Paragon NTFS for Mac免费获取官方赠送正版.更新获取ntfs for mac 14方法

    Paragon NTFS for Mac免费获取官方赠送正版,没有这个软件的朋友赶紧收下.获取地址http://www.paragon-drivers.com/cn/ntfs-mac-free/ntf ...

  9. 技术揭秘12306改造(一):尖峰日PV值297亿下可每秒出票1032张

    [编者按]12306网站曾被认为是"全球最忙碌的网站",在应对高并发访问处理方面,曾备受网民诟病. 2015年铁路客票春运购票高峰期已过,并且12306网站今年没"瘫痪& ...

  10. 使用git客户端获取shiro

    1.进入下载的目标文件夹右键( Git Bash Here )