【cocos2d-x 3.0】装配FMOD外部音频引擎【Android】
2014-03-23 17:55
369 查看
Cocos2d-x目前最新版本(3.0 rc0)自带的音频引擎仍然还是CocosDenshion,仅提供一些基本功能
对于音乐、音效方面要求较高的游戏而言难以满足要求
所以我们可以使用强大的FMOD引擎来解决需求!它几乎支持所有游戏平台,无论Windows/Linux/Mac/ios/android/Xbox/PlayStation通通支持!
废话不多说,下面up主举例说明如何在Cocos2dx(3.0 rc0)+Android下面使用FMOD音频引擎:
1. 首先到Fmod.org官网下载<Fmod Ex Programmer's API>其中的Android版
2. 将刚刚下载的压缩包中的<api>文件夹解压到proj.android目录中的fmodex文件夹(需自建)
3. 编辑proj.android/jni/Android.mk(红色的部分是我们添加进去的)
4. 编辑proj.android/src/org/cocos2dx/cpp/Cocos2dxActivity.java(红色的部分是我们添加进去的)
OK,这样基本的配置就完成了!
我们可以做一个简单的试验(需要包含fmod.hpp和fmod_errors.h)
这样就可以播放sd卡根目录下的TEST.mp3了~
关于FMOD更多强大的功能可以查阅引擎官方文档,这里就不进行介绍了
另外上面样例cpp中的写法不能读取Assets中的音频只能读取SD卡中的,不过有方法可以解决(请自行百度啦^^)
*转载请注明*
copyright by
scarlet.MP5
对于音乐、音效方面要求较高的游戏而言难以满足要求
所以我们可以使用强大的FMOD引擎来解决需求!它几乎支持所有游戏平台,无论Windows/Linux/Mac/ios/android/Xbox/PlayStation通通支持!
废话不多说,下面up主举例说明如何在Cocos2dx(3.0 rc0)+Android下面使用FMOD音频引擎:
1. 首先到Fmod.org官网下载<Fmod Ex Programmer's API>其中的Android版
2. 将刚刚下载的压缩包中的<api>文件夹解压到proj.android目录中的fmodex文件夹(需自建)
3. 编辑proj.android/jni/Android.mk(红色的部分是我们添加进去的)
LOCAL_PATH := $(call my-dir) include $(CLEAR_VARS) LOCAL_MODULE := fmodex LOCAL_SRC_FILES := ../fmodex/api/lib/$(TARGET_ARCH_ABI)/libfmodex.so LOCAL_EXPORT_C_INCLUDES := $(LOCAL_PATH)../fmodex/api/inc include $(PREBUILT_SHARED_LIBRARY) include $(CLEAR_VARS) LOCAL_MODULE := cocos2dcpp_shared LOCAL_MODULE_FILENAME := libcocos2dcpp LOCAL_SRC_FILES := hellocpp/main.cpp \ ../../Classes/AppDelegate.cpp \ ../../Classes/HelloWorldScene.cpp LOCAL_C_INCLUDES := $(LOCAL_PATH)/../../Classes LOCAL_WHOLE_STATIC_LIBRARIES := cocos2dx_static LOCAL_WHOLE_STATIC_LIBRARIES += cocosdenshion_static LOCAL_WHOLE_STATIC_LIBRARIES += box2d_static LOCAL_SHARED_LIBRARIES := fmodex include $(BUILD_SHARED_LIBRARY) $(call import-module,2d) $(call import-module,audio/android) $(call import-module,Box2D) |
package org.cocos2dx.cpp; import android.app.NativeActivity; import android.os.Bundle; public class Cocos2dxActivity extends NativeActivity{ @Override protected void onCreate(Bundle savedInstanceState) { // TODO Auto-generated method stub super.onCreate(savedInstanceState); } static { System.loadLibrary("fmodex"); } } |
我们可以做一个简单的试验(需要包含fmod.hpp和fmod_errors.h)
FMOD_RESULT result; FMOD::System *system; result = FMOD::System_Create(&system); result = system->init(100, FMOD_INIT_NORMAL, 0); FMOD::Sound *sound; result = system->createStream("/mnt/sdcard/TEST.mp3", FMOD_DEFAULT, 0, &sound); FMOD::Channel *channel; result = system->playSound(FMOD_CHANNEL_FREE, sound, false, &channel);
这样就可以播放sd卡根目录下的TEST.mp3了~
关于FMOD更多强大的功能可以查阅引擎官方文档,这里就不进行介绍了
另外上面样例cpp中的写法不能读取Assets中的音频只能读取SD卡中的,不过有方法可以解决(请自行百度啦^^)
*转载请注明*
copyright by
scarlet.MP5
相关文章推荐
- 基于cocos2d-x的Android游戏中使用fmod音频引擎
- 基于cocos2d-x的Android游戏中使用fmod音频引擎
- 一、cocos2d-x 3.0 final使用httpclient编译到android,须要用到的android.mk
- cocos2d-x 3.0 Android编译环境的搭建win7+Eclipse
- 用于cocos2d-x引擎(ndk)中为android项目生成编译文件列表
- Cocos2d-x 3.0 Android改动APK名、更改图标、改动屏幕方向、改动版本,一些须要注意的问题
- 送给刚刚开始学cocos2d-x引擎 移植Android的同学
- 【Cocos2d-x 3.0】游戏开发之android交叉编译
- Cocos2d-x 3.0 物理引擎小demo
- Windows 环境下搭建Cocos2d-x 3.0环境并配置Android交叉编译环境
- Win7 64位中文旗舰版上Cocos2d-x 3.0的Android开发调试环境架设
- FMOD音频引擎简单使用
- 在cocos2d-x-3.0 android 平台编译时提示CocosGUI.h: No such file or directory
- 手把手教你把pomelo客户端组件libpomelo加入cocos2d-x 3.0项目(Windows、Android、IOS平台)
- FMOD音频引擎简单使用
- cocos2d-x 音频引擎
- 王哲:Cocos2d-x 3.0引擎带来了什么?
- Cocos2d-android游戏引擎----图形引擎
- cocos2d-x 3.0 将cpp-tests编译成Android版本号APK文件
- 从cocos2d-x 3.0 到 cocos2d-x 3.2 引擎升级记录