![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
cocos2d-x
文章平均质量分 85
偶尔e网事
折腾族:https://fusijie.github.io
展开
-
【玩转cocos2d-x之十二】plist解析工具:Anti_TexturePacker
原创作品,转载请标明:http://blog.csdn.net/jackystudio/article/details/12867863之前拿了一些别人的图片素材,是用TexturePacker打包合成的,结果写程序的时候不知道每个合成前小png图的名字是什么,只能一个一个从plist文件中找,然后猜测对应的名字,再进行显示,如果不对,还要继续猜。。。坑爹啊,效率大大降低了,时间都耗在找...原创 2013-10-19 08:11:33 · 30477 阅读 · 140 评论 -
【玩转cocos2d-x之二十一】多线程和同步01-pthread库
和其他框架一样,cocos2d-x允许我们使用多线程进行编程。cocos2d-x使用的是pthread库,是一套用户级线程库,被广泛地使用在跨平台应用上。1.配置在使用pthread之前,需要把头文件和库文件链接进来。pthread的官网戳这里,当然cocos2d-x帮我们包含进引擎了。1.1.头文件pthread.h放在\cocos2d-x目录\cocos2dx\plat原创 2013-11-04 10:41:50 · 11864 阅读 · 27 评论 -
【玩转cocos2d-x之二十三】多线程和同步03-图片异步加载
cocos2d-x中和Android,Windows都一样,如果在主线程中处理一些耗时操作,那么主线程就会出现阻塞现象,表现在界面上就是卡住,未响应等情况。为了避免这种情况的出现,我们需要在后台开辟工作线程进行数据的处理,再采用消息传递或者其他形式来通知主线程进行UI变化。最常见的情况就是游戏进入前的loading。1.图片的异步加载在多线程和同步的第一篇就有介绍到使用pthrea原创 2013-11-11 09:47:29 · 14448 阅读 · 11 评论 -
【玩转cocos2d-x之二十八】cocos2d-x的消息和数据传递
如何在层间或者场景间进行消息传递,大概是每个初学者都要面对的问题吧。这里介绍cocos2d-x的一种消息/数据传递方式,内置的观察者模式,也称消息通知中心,CCNotificationCenter。1.CCNotificationCenterCCNotificationCenter是cocos2d-x提供的一个消息中心,类似于观察者模式,是一个单例类,用于辅助控制消息传递。大概工作原创 2013-12-03 09:39:17 · 10269 阅读 · 7 评论 -
【玩转cocos2d-x之十七】cocos2d-x中文显示
cocos2d-x的中文显示其实就是一个UTF-8编码在作怪而已,一种简单的方法就是把文本保存为UTF-8编码即可(注意不是UTF-8 + BOM),建议使用UE,Sublime Text或者EditPlus之类的本文编辑器。这里介绍另一种方法:通过读取xml文件显示中文,这种方法更利于软件的国际化,demo顺便实现了中英文切换。1.xml文件先写好一个xml文件(CHN_原创 2013-10-25 08:20:25 · 8904 阅读 · 5 评论 -
【玩转cocos2d-x之十六】滚动字幕和公告
滚动字幕和公告是游戏中经常使用到的元素,本文大致写一下实现方法,至于例子中具体的坐标值,请不要纠结。。。这和美工关系还是蛮大的。我PS技术太搓了。。。1.原理其实它们的实现都是简单的通过调用update来更新位置达到的移动效果,和背景滚动有点类似,一旦滚动结束就重置为起点,开始新的滚动。只是为了达到在某个区域内滚动而不至于超出这个区域,有时候会用一些前景图来做遮盖,所以这个原创 2013-10-24 08:19:50 · 9340 阅读 · 4 评论 -
【玩转cocos2d-x之十八】仿《中国好学霸》文字拖拽和定位
现在各种猜成语猜歌名好学霸之类的游戏火的一塌糊涂。本节就介绍下文字的拖拽和定位。1.基本原理其实这只是精灵的简单拖拽和坐标的识别而已。当触摸点在精灵的范围内,精灵可以感应拖动,当触摸结束进行位置判断,如果在有效范围内就进行自动定位。2.实现2.1.背景加入和文字精灵的加入这里是采用这一节http://blog.csdn.net/jackystudio/artic原创 2013-10-28 08:49:59 · 6844 阅读 · 13 评论 -
【玩转cocos2d-x之十五】关卡选择的设计
这节介绍一下游戏中帮助界面和关卡选择的设计,其实都是一样的,关键在于美工。这里采用自定义TableView层来实现。1.导入头文件和设定空间因为TableView相关的类是在扩展包里面,所以必须先声明[cpp] view plaincopy#include "cocos-ext.h" USING_NS_CC_EX原创 2013-10-23 09:35:26 · 8364 阅读 · 15 评论 -
【玩转cocos2d-x之十四】菜单选项卡的实现
有时候,我们希望实现一个选项卡功能,就是切换tab选项,场景中的内容会跟着改变,但是tab选项卡不动。这是用切换场景的方式没办法做到的。这里我们就可以使用CCLayerMutiComplex来实现这个功能。1.创建布景这里创建3个布景来做示范。分别是Laye1,Layer2和Layer3。代码就不贴了,布景内容可以直接使用HelloWorld的代码。原创 2013-10-22 08:15:44 · 7577 阅读 · 8 评论 -
【cocos2d-x入门实战】微信飞机大战之三:引擎坐标系,锚点和背景滚动
cocos2d-x之微信打飞机实战演习,原滋原味的微信打飞机源码分享。原创 2013-09-16 14:29:01 · 17548 阅读 · 46 评论 -
【玩转cocos2d-x之二十七】CCSequence不能执行CCRepeatForever
之前在遇到这么一个问题,在CCSequence中加入CCRepeatForever,发现其他动作执行没问题,就是CCRepeatForever无法执行。代码并没有问题,很奇怪。1.示例[cpp] view plaincopyCCBlink* blink=CCBlink::create(0.5f,10);//创建闪烁动画,dur原创 2013-11-29 08:40:42 · 10987 阅读 · 7 评论 -
【cocos2d-x入门实战】微信飞机大战之四:主角的登场和帧动画
cocos2d-x之微信打飞机实战演习,原滋原味的微信打飞机源码分享。原创 2013-09-17 09:07:34 · 15908 阅读 · 71 评论 -
【玩转cocos2d-x之二十四】截图保存功能的实现
官方TestCpp有这个demo了,这里还是把它单独拖出来写一下,游戏推广的一个很重要组成就是玩家分享,所以游戏截图就起到很大作用了。截图功能通过CCRenderTexture实现。1.CCRenderTextureCCRenderTexture是一个通用渲染对象,可以通过构建一个CCRenderTexture对象,进而把要渲染的东西填充进去,在渲染开始前调用call函数,调用co原创 2013-11-13 08:41:13 · 10370 阅读 · 10 评论 -
【cocos2d-x入门实战】微信飞机大战之二:别急,先处理好CCScene和CCLayer的关系
cocos2d-x之微信打飞机实战演习,原滋原味的微信打飞机源码分享。原创 2013-09-15 20:40:40 · 23124 阅读 · 38 评论 -
【cocos2d-x入门实战】微信飞机大战之五:批次渲染
cocos2d-x之微信打飞机实战演习,原滋原味的微信打飞机源码分享。原创 2013-09-18 09:27:43 · 12879 阅读 · 32 评论 -
【cocos2d-x入门实战】微信飞机大战之八:自定义敌机精灵
cocos2d-x之微信打飞机实战演习,原滋原味的微信打飞机源码分享。原创 2013-09-22 11:38:06 · 15973 阅读 · 43 评论 -
【cocos2d-x入门实战】微信飞机大战之十二:分数的本地存储
cocos2d-x之微信打飞机实战演习,原滋原味的微信打飞机源码分享。原创 2013-09-26 11:03:57 · 9919 阅读 · 20 评论 -
【玩转cocos2d-x之二十二】多线程和同步02-售票
pthread有很多不同应用,官网都有相应的API解释和Sample,这里不再重复,本文主要介绍cocos2d-x中一个多线程和同步示例。1.卖票孙鑫老师的C++和Java多线程卖票一直让我念念不忘,好吧,这里用cocos2d-x和pthread实现一个吧。总共有100张火车票,有2个售票点A和B再售票,当票卖完了就结束了。我们知道当程序一开始进程就会创建一个主线程,我们可以在主线原创 2013-11-05 10:15:34 · 6413 阅读 · 5 评论 -
【玩转cocos2d-x之三十】点九图和输入框的使用
登录界面一个帐号/密码输入框或者主角命名框是少不了的。这节就来了解一下点九图的输入框的使用。这里只是介绍使用的基础,并不进行平台的移植,也不处理跨平台可能出现的问题。1.点九图CCScale9Sprite1.1.概述点九图做过移动开发的肯定不会陌生。采用的是PNG点9图,PNG点9图可以自适应各种环境,同时保持伸缩不变形。移动端的UI基本上都是按这个来做的。点9图的制作很简单,原创 2013-12-13 10:35:54 · 8609 阅读 · 12 评论 -
【玩转cocos2d-x之二十九】利用CCClipingNode做游戏遮罩
新手引导是游戏中必备的(除了奇葩的MT用一段动画开始),也是玩家对游戏的第一印象,重要性不言而喻。一般采用的遮罩的形式来突出引导重点,同时屏蔽其他功能。这里简单的介绍一下游戏遮罩的实现,并给出一个示例。1.CCClipingNodeCCClipingNode是一个可裁剪节点,简单理解:(1)首先它是一个节点,继承于CCNode,所以它可以像普通节点一样放入CCLayer,CCS原创 2013-12-06 10:33:27 · 13473 阅读 · 12 评论 -
【cocos2d-x入门实战】微信飞机大战之十五:跨平台移植和广告植入
cocos2d-x之微信打飞机实战演习,原滋原味的微信打飞机源码分享。原创 2013-09-29 09:33:48 · 20640 阅读 · 116 评论 -
【玩转cocos2d-x之四十】如何在Cocos2d-x 3.0中使用opengl shader?
有小伙伴提出了这个问题,其实GLProgramCocos2d-x引擎自带了。完全可以直接拿来用。先上图吧。使用opengl前后的对比:1.在cpp中使用openGL shader。(1)添加gray.vsh和gray.fsh到资源目录(见附件)。(2)添加如下代码:bool HelloWorld::init(){ if ( !Layer::in原创 2014-04-17 23:34:33 · 10778 阅读 · 9 评论 -
【玩转cocos2d-x之三十九】Cocos2d-x 3.0截屏功能集成
3.0的截屏和2.x的截屏基本上相同,都是利用RenderTexture来处理,在渲染之前调用call函数,然后调用Cocos的场景visit函数对其进行渲染,渲染结束后调用end函数即可。只是3.0截屏需要在截完屏的下一帧才能处理RenderTexture,这点要注意。关于2.x的RenderTexture的API和demo可以参见http://blog.csdn.net/jackystudio原创 2014-04-17 21:24:16 · 6284 阅读 · 0 评论 -
【玩转cocos2d-x之三十八】如何使用NDK-STACK tool来恢复Cocos2d-x安卓错误堆栈信息
很多童鞋在纠结在Cocos2d-x中安卓项目如何调试JNI部分的C++代码,在吃完2个茶叶蛋后我决定放大招。。。本文翻译自:http://www.cocos2d-x.org/forums/6/topics/462251.安卓 NDK-STACK toolNDK-Stack 是一个非常易用的工具,它通过将信息显示到adb logcat中来辅助你分析堆栈追踪,然后用相应的值(哪篇源原创 2014-03-31 23:38:28 · 7732 阅读 · 1 评论 -
【玩转cocos2d-x之三十七】粒子系统的加载优化
Cocos2d-x的粒子系统是通过加载plist生成的。plist包含两部分内容:粒子系统属性和粒子纹理。然而每次调用create都会对plist进行读取解析,如果重复地使用同一个粒子效果,这样的调用明显是低效冗余的。所以我们要做的是,将粒子系统属性和粒子纹理分别抽出。(1)将粒子系统属性预加载并全局保存,避免每次进行读取。(2)粒子纹理可视且可以进行纹理打包,加载粒子纹理就和加载普通的图原创 2014-03-31 14:21:44 · 6799 阅读 · 3 评论 -
【玩转cocos2d-x之三十六】Flappy Bird大集结
前几天看到cocos2d-x官网论坛让各种姿势的flappy bird霸占了,矮油真受不鸟,你们够啦!!! 今天准备用一个贴来秒杀你们。准备好了么。。。放图镇楼:1.C++版先来个传统版,@OiteBoys童鞋很有爱,将flappy bird用cocos2d-x v3.0写了一遍,同时加入了新的3.0物理系统。在这一系列教原创 2014-03-28 10:01:52 · 6556 阅读 · 7 评论 -
【玩转cocos2d-x之三十五】Earth Warrior 3D大揭秘
3D游戏现在玩起来门槛还是挺高的。不过如果在Cocos2d-x引擎加入3D扩展,实现2.5D游戏效果又会怎么样?1.概述先上大会现场演示图:Apk下载:http://pan.baidu.com/s/1ntM75bV源码下载:https://github.com/chukong/EarthWarrior3D.git,给个star不费电。。。开发环境:Cocos2d-x v原创 2014-03-24 00:02:54 · 8816 阅读 · 16 评论 -
【玩转cocos2d-x之三十一】弱联网与服务器的通讯
这里采用Apache+php搭建了一个简易服务器,服务端用php语言,客户端采用cocos2d-x的CCHttpClient类通过http方式访问服务端资源。模拟了cocos2d-x提交账户和密码到服务端,服务端校验帐号密码,如果正确返回客户端成功登录,如果错误则返回错误信息,同时在服务端后台保存登录log。第一次接触php,语法上和C/C++还是蛮像的,主要是给出一个cocos2d-x网络实例,原创 2013-12-16 09:01:41 · 13723 阅读 · 5 评论 -
【cocos2d-x入门实战】微信飞机大战之一:搞个飞机来玩玩
cocos2d-x之微信打飞机实战演习,原滋原味的微信打飞机源码分享。原创 2013-09-14 11:13:40 · 31760 阅读 · 54 评论 -
【玩转cocos2d-x之三十四】绘图:CCDrawingPrimitives和CCDrawNode
最近忙出翔了,这年过的也揪心。好久没来更新博客了,今天就来写一写cocos2d-x中图形的绘制。1.概述其实cocos2d-x封装了大量的opengl的绘图函数,我们可以很轻松的在游戏中调用。但是实际上我们很少会这么做,因为编码绘图的方式效率实在太低了,尤其是诸如一些高阶贝塞尔曲线之类的,官方也不建议这么做,使用图像能更有效的提高绘图效率,同时也会更为的美观,也减少了一些精原创 2014-02-08 08:28:17 · 8854 阅读 · 6 评论 -
【cocos2d-x入门实战】微信飞机大战之九:碰撞检测
cocos2d-x之微信打飞机实战演习,原滋原味的微信打飞机源码分享。原创 2013-09-23 09:10:15 · 21185 阅读 · 76 评论 -
【玩转cocos2d-x之十】cocos2d-x坐标系
cocos2d-x采用的是笛卡尔平面坐标系,也就是平面上两条垂直线构成的坐标系,平面上任意一点都可以用(x,y)来表示。(1)就坐标系方向而言,cocos2d-x分为屏幕坐标系和OpenGL坐标系。(2)就节点本身而言,cocos2d-x分为绝对坐标系和相对坐标系。1.屏幕坐标系屏幕坐标系,也叫UIKit坐标系,原点在屏幕左上,x轴向右,y轴向下。cocos原创 2013-10-17 08:08:48 · 14130 阅读 · 12 评论 -
【玩转cocos2d-x之三十三】游戏嵌入Webview网页
手游《我叫MT》一开始会弹出一个游戏公告,有玩过的肯定都蛮熟悉的,这就是webview,就是一个网页。由于webview和平台相关,这里就介绍下cocos2d-x如何嵌入andorid的webview控件,在cocos2d-x中显示网页。1.JniJni这里我就不再多说了。可用参考wikipedia,或者微信飞机大战的移植篇。通过Jni,可以实现在cocos2d-x中调用Android的API,当然也可以进行传值。2.Android使用webview直接上代码。主要是处理布局和webview原创 2013-12-26 10:03:15 · 25222 阅读 · 1 评论 -
【玩转cocos2d-x之四】cocos2d-x怎么实现跨平台
cocos2d-x到底是这样实现跨平台的呢?这里以Win32和Android为例。1.跨平台项目目录结构先看一下一个项目创建后的目录结构吧!这还是以HelloCpp为例。 从左边目录可以看到,Classes和Resource已经平台无关了,而Classes中包含了AppDelegate类,因此我们可以认为AppDelegate是与原创 2013-10-11 08:36:02 · 14762 阅读 · 2 评论 -
【玩转cocos2d-x之三十二】xml的解析
cocos2d-x中对xml的解析是采用的TinyXML库,而对plist的解析同时结合了CCDictionary来处理,这里简单介绍下cocos2d-x中解析xml的两种方式,也是常用的xml两个C++解析库:TinyXML和RapidXML。xml被设计用于数据存储和传输,重点是数据内容本身,而不像html,用于表现数据。1.TinyXML1.1.概况T原创 2013-12-19 08:53:14 · 9750 阅读 · 12 评论 -
【cocos2d-x入门实战】微信飞机大战之六:子弹层的处理
cocos2d-x之微信打飞机实战演习,原滋原味的微信打飞机源码分享。原创 2013-09-21 08:47:45 · 15563 阅读 · 72 评论 -
【cocos2d-x入门实战】微信飞机大战之十一:游戏暂停和触摸屏蔽
cocos2d-x之微信打飞机实战演习,原滋原味的微信打飞机源码分享。原创 2013-09-25 09:25:16 · 11778 阅读 · 9 评论 -
【cocos2d-x入门实战】微信飞机大战之十:UFO层特殊道具
cocos2d-x之微信打飞机实战演习,原滋原味的微信打飞机源码分享。原创 2013-09-24 10:54:41 · 9285 阅读 · 20 评论 -
【cocos2d-x入门实战】环境配置、交叉编译及安卓项目的生成
1.配置cocos2d-x & Android开发环境我想如果有意搞这个东东的,应该不用什么图文并茂了吧,稍微看一下就明白了。1.1.安装VS2008这是微软开发的集成开发环境,也是cocos2d-x的C++主战场。下载地址:http://pan.baidu.com/share/link?shareid=532811852&uk=637953331激活方式就不提供了,自原创 2013-09-10 10:30:53 · 22195 阅读 · 31 评论 -
地球人己阻止不了程序猿们学习cocos2d-x了 (第五篇)
转自http://cocos2d.cocoachina.com/bbs/forum.php?mod=viewthread&tid=1222&extra=page%3D1内容重点: 为 cocos2d-x 加上关键帧粒子系统.cocos2d-x 的粒子系统只有单一发射器, 而且粒子的变化只有开始和结束的设定, 局限挺大的.举个列子, 一个好的爆炸效果, 要有烟, 有火花,转载 2013-09-05 15:00:54 · 2143 阅读 · 0 评论