Cocos2d-x采用SimpleAudioEngine这个类作为实现跨平台的音乐引擎,第一步需要引入头文件。
2、预加载音乐文件(可以不进行提前加载)
对于声音文件,我们可以提前加载,这样会提高游戏的执行效率,但却会增加内存消耗,编码时,我们需要根据实际情况决定是否要进行预加载处理。
例如:
1、引入头文件以及相应的库
- #include "cocos2d.h"
- #include "SimpleAudioEngine.h"
- #include "CocosDenshionTest.h"
- using namespace CocosDenshion;
2、预加载音乐文件(可以不进行提前加载)
- #if (CC_TARGET_PLATFORM == CC_PLATFORM_ANDROID)
- #define EFFECT_FILE "effect2.ogg"
- #elif( CC_TARGET_PLATFORM == CC_PLATFORM_MARMALADE)
- #define EFFECT_FILE "effect1.raw"
- #else
- #define EFFECT_FILE "effect1.wav"
- #endif
- #if (CC_TARGET_PLATFORM == CC_PLATFORM_WIN32)
- #define MUSIC_FILE "music.mid"
- #elif (CC_TARGET_PLATFORM == CC_PLATFORM_BLACKBERRY || CC_TARGET_PLATFORM == CC_PLATFORM_LINUX )