- 浏览: 462689 次
- 性别:
- 来自: 济南
文章分类
- 全部博客 (470)
- 前言 (1)
- 【sys】centos6.2 (51)
- 【sys】shell (8)
- 【sys】yum (1)
- software (6)
- 【tec】ruby (16)
- 【tec】rails (35)
- 【tec】rails路由 (2)
- 【tec】rails部署 (10)
- 【tec】rails优化 (6)
- 【tec】rails测试 (11)
- 【tec】php (45)
- 【tec】android (1)
- 【tec】ios (125)
- 【data】mysql (11)
- web (6)
- 【life】文学与提升 (2)
- life (36)
- 【life】怀念 (1)
- 【web】nginx (5)
- 【web】网络与安全 (4)
- 工作随笔 (1)
- 【software】svn (5)
- 【script】jquery (10)
- powerEdge (2)
- 杂七杂八 (5)
- 【sys】ubuntu (9)
- 【sys】windows (4)
- 【tec】java (1)
- 【tec】html (3)
- 【tec】c++ (38)
- 【tec】汇编 (1)
- 【data】数据库 (1)
- 【exchange 】学术交流 (1)
- 【tec】域名空间 (1)
- 【tec】编程先知 (1)
- 【tec】网站建设 (7)
- 【sys】mac (24)
- 【sys】seo (1)
- 【tec】wp (1)
- 【software】git (4)
最新评论
-
fireDragonpzy:
呵呵 貌似我网站上的有更新 你从那里看看 这个博客维护的不及时 ...
牛人经典语录 -
Peppermintchz:
还真这么2过啊!!好怀念啊
牛人经典语录 -
fireDragonpzy:
chenhong53 写道你好,我想问一下,能不能给一组精灵数 ...
cocos2d-x事件触发的优先级 -
chenhong53:
你好,我想问一下,能不能给一组精灵数组中的精灵添加触屏优先级, ...
cocos2d-x事件触发的优先级 -
fireDragonpzy:
dreamstar1020 写道谢谢庞兄指点,写的很详细,谢谢 ...
致:上海郑兄(虚拟主机-web服务器搭建)
本文为firedragonpzy原创,转载务必在明显处注明:
转载自【Softeware MyZone】原文链接: http://www.firedragonpzy.com.cn/index.php/archives/905
有关cocos2d-x游戏中音乐音效的处理一般可选两种方式:第一种,在没有进度处理的情况下,最好将音乐音效的状态设置为三种,开状态,关状态,未初始化状态,因为得判断是否首次进入场景,然后进行处理。第二种,有了进度的情况下,设置一种即可。
接下来分别说下两种的设置,关于第一种,你可以讲状态设置为三个值,0,1,2等等,但是我是个比较懒惰的人,所以我设置了两个值,bool型,true或false。这是本文的精华,大家注意哦。
首先,大家先看看CCUserDefault的头文件,如下:
如果没有设置的bool型为false,所以我讲未初始化和开状态都设置为false,而关状态设置为true。
关于第二种,设置了进度,即可在进度处设置音乐音效的开关,如下代码:
这只是音乐音效开关的设置,但是我还遇到了一个比较扯淡的问题,我在游戏音乐设置界面,将音乐关了,按Home键退出,再次进入的时候音乐竟然是打开的,而我的音乐按钮是关闭的。音乐按钮关闭是应该的,但是音乐打开确实不对的。在退出之前我明明是将音乐关掉的啊!
若你也有此疑问,那就接着往下看。
相信很多朋友们都很少关注AppDelegate.cpp吧。其实我也关注很少,偶然发现里面有这段代码,如下:
当然我贴出来的是我修改后的代码,When comes a phone call,it's be invoked too这就是按了home键,// this function will be called when the app is active again再次进入的时候,相信到这里大家就应该很明白了吧!
提醒:(1)在使用CCUserDefault的时候注意状态值得设置,是设置两个还是三个
(2)注意AppDelegate里面的applicationDidEnterBackground()和applicationWillEnterForeground()方法,我现在知道的就是音乐要在这里处理下,别的没有必要,要是有别的需要处理,欢迎大家评论指教……
今天就先到这里吧,呼呼……
转载自【Softeware MyZone】原文链接: http://www.firedragonpzy.com.cn/index.php/archives/905
有关cocos2d-x游戏中音乐音效的处理一般可选两种方式:第一种,在没有进度处理的情况下,最好将音乐音效的状态设置为三种,开状态,关状态,未初始化状态,因为得判断是否首次进入场景,然后进行处理。第二种,有了进度的情况下,设置一种即可。
接下来分别说下两种的设置,关于第一种,你可以讲状态设置为三个值,0,1,2等等,但是我是个比较懒惰的人,所以我设置了两个值,bool型,true或false。这是本文的精华,大家注意哦。
首先,大家先看看CCUserDefault的头文件,如下:
/** @brief Get bool value by key, if the key doesn't exist, a default value will return. You can set the default value, or it is false. */ bool getBoolForKey(const char* pKey, bool defaultValue = false); /** @brief Get integer value by key, if the key doesn't exist, a default value will return. You can set the default value, or it is 0. */ int getIntegerForKey(const char* pKey, int defaultValue = 0); /** @brief Get float value by key, if the key doesn't exist, a default value will return. You can set the default value, or it is 0.0f. */ float getFloatForKey(const char* pKey, float defaultValue=0.0f); /** @brief Get double value by key, if the key doesn't exist, a default value will return. You can set the default value, or it is 0.0. */ double getDoubleForKey(const char* pKey, double defaultValue=0.0); /** @brief Get string value by key, if the key doesn't exist, a default value will return. You can set the default value, or it is "". */ std::string getStringForKey(const char* pKey, const std::string & defaultValue = "");
如果没有设置的bool型为false,所以我讲未初始化和开状态都设置为false,而关状态设置为true。
关于第二种,设置了进度,即可在进度处设置音乐音效的开关,如下代码:
CCUserDefault *userDefault = CCUserDefault::sharedUserDefault(); if (!userDefault->getIntegerForKey(gcCURPROGRESSMARK)) { userDefault->setIntegerForKey(gcCURPROGRESSMARK, nBLOOMINGDALEFIRST ); userDefault->setIntegerForKey(gcHASICELOTUS,0); userDefault->setIntegerForKey(gcHASCRYSTAL,0); userDefault->setIntegerForKey(gcHASWINDBELL,0); userDefault->setBoolForKey( gcMUSICSTATE, true ); userDefault->setBoolForKey( gcEFFECTSTATE, true ); }
这只是音乐音效开关的设置,但是我还遇到了一个比较扯淡的问题,我在游戏音乐设置界面,将音乐关了,按Home键退出,再次进入的时候音乐竟然是打开的,而我的音乐按钮是关闭的。音乐按钮关闭是应该的,但是音乐打开确实不对的。在退出之前我明明是将音乐关掉的啊!
若你也有此疑问,那就接着往下看。
相信很多朋友们都很少关注AppDelegate.cpp吧。其实我也关注很少,偶然发现里面有这段代码,如下:
// This function will be called when the app is inactive. When comes a phone call,it's be invoked too void AppDelegate::applicationDidEnterBackground() { CCDirector::sharedDirector()->pause(); if ( MusicManager::getMusicState() ) { SimpleAudioEngine::sharedEngine()->resumeBackgroundMusic(); } else { SimpleAudioEngine::sharedEngine()->pauseBackgroundMusic(); } } // this function will be called when the app is active again void AppDelegate::applicationWillEnterForeground() { CCDirector::sharedDirector()->resume(); if ( MusicManager::getMusicState() ) { SimpleAudioEngine::sharedEngine()->resumeBackgroundMusic(); } else { SimpleAudioEngine::sharedEngine()->pauseBackgroundMusic(); } }
当然我贴出来的是我修改后的代码,When comes a phone call,it's be invoked too这就是按了home键,// this function will be called when the app is active again再次进入的时候,相信到这里大家就应该很明白了吧!
提醒:(1)在使用CCUserDefault的时候注意状态值得设置,是设置两个还是三个
(2)注意AppDelegate里面的applicationDidEnterBackground()和applicationWillEnterForeground()方法,我现在知道的就是音乐要在这里处理下,别的没有必要,要是有别的需要处理,欢迎大家评论指教……
今天就先到这里吧,呼呼……
发表评论
-
cocos2d-x CCClippingNode遮罩实现手电筒效果
2013-07-09 20:14 2243详情请参考:【Software Myzone】:http:// ... -
Cocos2d: Stencil buffer is not enabled.
2013-07-05 10:47 1619详情请参考:【Software Myzone】:http:// ... -
[2.1.3]修改SearchPaths的三种方式【熊猫版】
2013-06-24 09:44 870详情请参考:【Software Myzone】:http:// ... -
深入理解 Cocos2d-x 内存管理 转
2013-06-24 09:43 800详情请参考:【Software Myzone】:http:// ... -
cocos2d-x场景缩放后的区域碰撞检测
2013-06-24 09:31 1412详情请参考:【Software Myzone】:http:// ... -
编译CSArmature到Android
2013-05-29 09:09 774详情请参考:【Software Myzone】:http:// ... -
TexturePacker 图片加密 转
2013-05-29 09:09 883详情请参考:【Software Myzone】:http:// ... -
Cocos2d-x 屏幕适配新解 转
2013-05-28 13:21 897详情请参考:【Software Myzone】:http:// ... -
cocos2d-x 使用TinyXML2存储数据:FDTinyXML2
2013-05-09 14:31 1072详情请参考:【Software Myzone】:http:// ... -
TinyXML2 学习
2013-05-09 14:31 796详情请参考:【Software Myzone】:http:// ... -
cocos2d-x 精灵的移动遮罩[手电筒效果]
2013-05-02 09:41 1097详情请参考:【Software Myzone】:http:// ... -
Android平台中进程与线程的基本知识
2013-05-02 09:41 730详情请参考:【Software Myzone】:http:// ... -
Jumper类游戏制作【Forest Run】
2013-04-24 16:20 547详情请参考:【Software Myzone】:http:// ... -
Cocos2D 如何做 Android 适配 转
2013-04-22 16:48 653详情请参考:【Software Myzone】:http:// ... -
类似Temple Run 游戏恢复的321倒计时实现
2013-04-22 16:47 1043详情请参考:【Software Myzone】:http:// ... -
工具库:UtilTools
2013-04-22 16:47 694详情请参考:【Software Myzone】:http:// ... -
C++的深拷贝与浅拷贝
2013-04-03 10:23 782详情请参考:【Software Myzone】:http:// ... -
Cocos2d-x Win32下的节点缩放原理研究心得【熊猫版】
2013-04-03 10:23 883详情请参考:【Software Myzone】:http:// ... -
Cocos2d-x 节点绘制流程研究心得【熊猫版】
2013-04-03 10:22 803详情请参考:【Software Myzone】:http:// ... -
基于cocos2d-x的游戏客户端优化
2013-04-03 10:22 731详情请参考:【Software Myzone】:http:// ...
相关推荐
本书会介绍Cocos2d-x的音频API,包括音乐播放、音效处理以及音效资源的加载和管理。 此外,书中还会涉及用户输入处理、触摸事件、键盘事件的响应,以及如何实现游戏的交互功能。对于网络编程,Cocos2d-x提供了网络...
资源名称:Cocos2d-x实战:JS卷——Cocos2d-JS开发内容简介:本书是介绍Cocos2d-x游戏编程和开发技术书籍,介绍了使用Cocos2d-JS中核心类、瓦片地图、物理引擎、音乐音效、数据持久化、网络通信、性能优化、多平台...
在Cocos2d-x中,C++作为主要的编程语言,相比初版,第二版可能涵盖了更多Cocos2d-x的新特性和优化。C++的使用可以提供更好的性能和更直接的内存管理,同时也能充分利用面向对象编程的特性来构建复杂的游戏逻辑。 源...
本书可能会详细讲解Cocos2d-x中的内存管理机制,如自动引用计数(ARC)和弱引用,以及如何通过优化代码和数据结构来提高游戏运行效率。 最后,还会涉及到Cocos2d-x的构建系统和发布流程,包括多平台支持、资源打包...
8. **Audio支持**:支持音频播放和音效处理,方便游戏中的音乐和声音效果实现。 9. **脚本支持**:通过tolua++和jsb,开发者可以选择使用Lua或JavaScript进行游戏逻辑编写,降低开发门槛。 10. **资源管理**:内置...
6. **音频和音乐**:介绍如何在Cocos2d-x中播放背景音乐和音效,以及音乐的控制和管理。 7. **网络与存储**:讨论如何进行网络通信,如下载更新、保存和读取游戏数据。 8. **性能优化**:提供关于代码优化、内存...
总的来说,Cocos2d-x 3.1是游戏开发者学习2D游戏开发的一个重要参考点,虽然它已经不是最新的版本,但其核心概念和机制在后续版本中仍然保持一致,是理解整个Cocos2d-x框架的基础。解压并研究“cocos2d-x-3.1”中的...
《Cocos2d-x游戏引擎实战开发炸弹超人》是一个基于Cocos2d-x框架的2D游戏开发教程,旨在帮助开发者深入理解并熟练运用这一强大的游戏引擎。Cocos2d-x是一个开源、跨平台的2D游戏开发工具,它支持iOS、Android、...
《cocos2d-x 2.1.4:探索移动游戏开发的新篇章》 cocos2d-x 是一个跨平台的2D游戏开发框架,它为开发者提供了强大的工具和技术支持,使得游戏开发变得更为便捷。2.1.4 版本是这个框架的一个重要里程碑,它在前一...
总结,通过深入研究"runningGame"的源码,我们可以了解到cocos2d-x在跑酷游戏开发中的应用,掌握从资源管理到游戏逻辑实现的全过程。这对于开发者来说,既是一次实践操作的锻炼,也是一次理论知识的巩固,对于后续的...
《Cocos2D-X游戏开发技术精解》是一本深入探讨Cocos2D-X游戏引擎的专著。Cocos2D-X是世界上最流行的开源游戏开发框架之一,它基于C++,并提供了Python和Lua的绑定,让开发者可以利用这些语言进行高效的游戏开发。这...
8. **网络编程**:学习如何在Cocos2d-x中实现网络通信,包括HTTP请求、WebSocket连接,以及游戏中的数据同步。 9. **音频播放**:掌握音频管理,包括背景音乐、音效的播放与控制,提升游戏体验。 10. **性能优化**...
游戏源码中包含了大量的图像资源,这些图片资源是构建游戏场景、角色、特效等视觉元素的基础,通过解析这些资源,我们可以了解如何在cocos2d-x中加载和管理图片资源,以及如何实现动态动画效果。 在cocos2d-x中,...
cocos2d-x 是一个开源的游戏开发框架,广泛应用于跨平台2D游戏的开发,支持iOS、Android、Windows等操作系统。它的3.13.1版本是一个重要的里程碑,提供了诸多改进和优化,使得开发者能够更高效地构建游戏。 一、...
总的来说,《保卫萝卜》的源代码揭示了Cocos2d-x在2D游戏开发中的应用,涵盖了游戏设计、动画、音频处理、跨平台发布等多个方面的知识。通过研究这套源代码,开发者可以学习到如何利用Cocos2d-x框架构建一款功能完备...
书中会讲解如何使用Cocos2D-X的音频API播放背景音乐和音效,以及如何实现音频的同步。 为了增强游戏的互动性,事件处理和触摸输入的响应机制是必不可少的。这部分内容将教会读者如何监听和处理用户输入,创建响应...
3. **场景和层管理**:在cocos2d-x中,游戏逻辑通常组织在不同的场景(Scene)和层(Layer)中。场景是游戏的主要容器,而层则是场景中的子容器,用于承载具体的游戏元素和逻辑。 4. **精灵(Sprite)和动画(Animation)**...
在这个项目实战中,我们将深入探讨如何利用Cocos2d-x 3.2版本构建一款完整的射击游戏。 首先,Cocos2d-x的场景管理是游戏开发的基础。在《迷失航线》中,游戏会通过Scene对象来组织不同的游戏阶段,如主菜单、游戏...
cocos2d-x提供了一套音频管理接口,支持播放背景音乐和音效,同时可以控制音量和播放状态,以实现沉浸式的游戏体验。 除此之外,cocos2d-x还支持事件处理,如触摸事件和键盘事件,这使得游戏可以响应用户的输入。...
本文将深入探讨如何在Cocos2d-x中实现背景音乐的播放,并提供相关的示例代码供初学者参考。 1. **Cocos2d-x的音频支持** Cocos2d-x提供了强大的音频处理功能,通过`SimpleAudioEngine`类,开发者可以方便地进行...