最新Cocos2d-x3.x播放音效与背景音乐以及手机游戏震动特效

@Cocos2d-x3.x实现播放游戏音效与手机震动(2016.12.1更新)

Cocos2d-x中振动的实现和SimpleAudioEngine声音的播放等类似,都算为一种简单的音效播放,只不过震动音效需要自己添加具体定义才能调用,具体添加以及调用方法如下:

1.调用的类中先包含头文件:

#include"SimpleAudioEngine.h"

2.播放音效与背景音乐:

播放音效(背景音乐)是调用类似下面的函数:

SimpleAudioEngine::sharedEngine()->playEffect("effect_bullet.mp3");(已弃用)
新版调用方法要加域名:
//播放音效
CocosDenshion::SimpleAudioEngine::getInstance()->playEffect("menu_bg.mp3");
// 背景音乐
CocosDenshion::SimpleAudioEngine::getInstance()->playBackgroundMusic("menu_bg.mp3",true);

3.添加vibrate()函数:

但是SimpleAudioEngine默认没有振动函数vibrate()的定义,需要开发者自行添加,具体如下:


找到SimpleAudioEngine的.h头文件(可以通过按住command然后点任意一个有SimpleAudioEngine的地方跳到):



在头文件里定义一个振动函数:void vibrate();




command同时点击其他已经定义的任意一个函数跳到SimpleAudioEngine的.m文件里实现vibrate的实现函数,实现代码如下:

//播放振动
void SimpleAudioEngine::vibrate()
{
   AudioServicesPlaySystemSound(kSystemSoundID_Vibrate);
}



3.震动调用:

之后就可以在需要的地方调用自己定义的振动函数实现手机振动了:

//手机振动(cocos2dx 2.x)
SimpleAudioEngine::sharedEngine()->vibrate();(已弃用)

新版cocos2dx 3.x调用方法(添加了域名):

// 震动
CocosDenshion::SimpleAudioEngine::getInstance()->vibrate();

相关文章

    本文实践自 RayWenderlich、Ali Hafizji 的文章《...
Cocos-code-ide使用入门学习地点:杭州滨江邮箱:appdevzw@1...
第一次開始用手游引擎挺激动!!!进入正题。下载资源1:从C...
    Cocos2d-x是一款强大的基于OpenGLES的跨平台游戏开发...
1.  来源 QuickV3sample项目中的2048样例游戏,以及最近《...
   Cocos2d-x3.x已经支持使用CMake来进行构建了,这里尝试...