偶尔e网事

Work in Cocos2d-x Team.

【玩转cocos2d-x之二十】从CCObject看cocos2d-x的内存管理机制

再看CCObject,剔除上节的拷贝相关,以及Lua脚本相关的属性和方法后,CCObject还剩下什么? 1.剩下什么? 可以看到整个CCObject就是围绕着m_uReference和m_uAutoReleaseCount在转。这两个变量的解释如下。所以CCObject剩下的其实就是对内存的...

2013-10-31 09:09:13

阅读数:6242

评论数:2

【玩转cocos2d-x之十九】从CCObject看cocos2d-x的拷贝机制

CCObject在之前的文章中出现了N次,它扮演了一个老祖宗的角色,但是它到底是做什么的?先从它看看cocos2d-x的拷贝机制吧。 1.CCCopying CCObject从CCCopying继承而来,而CCCopying拥有唯一的虚函数copyWithZone,这个函数可以认为是拷贝的一个...

2013-10-30 08:13:30

阅读数:7154

评论数:6

【玩转cocos2d-x之十八】仿《中国好学霸》文字拖拽和定位

现在各种猜成语猜歌名好学霸之类的游戏火的一塌糊涂。本节就介绍下文字的拖拽和定位。 1.基本原理 其实这只是精灵的简单拖拽和坐标的识别而已。当触摸点在精灵的范围内,精灵可以感应拖动,当触摸结束进行位置判断,如果在有效范围内就进行自动定位。 2.实现 2.1.背景加入和文字精灵的加入 这里是采...

2013-10-28 08:49:59

阅读数:6460

评论数:15

【玩转cocos2d-x之十七】cocos2d-x中文显示

cocos2d-x的中文显示其实就是一个UTF-8编码在作怪而已,一种简单的方法就是把文本保存为UTF-8编码即可(注意不是UTF-8 + BOM),建议使用UE,Sublime Text或者EditPlus之类的本文编辑器。这里介绍另一种方法:通过读取xml文件显示中文,这种方法更利于软件的国际...

2013-10-25 08:20:25

阅读数:8233

评论数:6

【玩转cocos2d-x之十六】滚动字幕和公告

滚动字幕和公告是游戏中经常使用到的元素,本文大致写一下实现方法,至于例子中具体的坐标值,请不要纠结。。。这和美工关系还是蛮大的。我PS技术太搓了。。。 1.原理 其实它们的实现都是简单的通过调用update来更新位置达到的移动效果,和背景滚动有点类似,一旦滚动结束就重置为起点,开始新的滚动...

2013-10-24 08:19:50

阅读数:8544

评论数:5

【玩转cocos2d-x之十五】关卡选择的设计

这节介绍一下游戏中帮助界面和关卡选择的设计,其实都是一样的,关键在于美工。这里采用自定义TableView层来实现。 1.导入头文件和设定空间 因为TableView相关的类是在扩展包里面,所以必须先声明 [cpp] view plaincopy #include ...

2013-10-23 09:35:26

阅读数:7416

评论数:16

【玩转cocos2d-x之十四】菜单选项卡的实现

有时候,我们希望实现一个选项卡功能,就是切换tab选项,场景中的内容会跟着改变,但是tab选项卡不动。这是用切换场景的方式没办法做到的。 这里我们就可以使用CCLayerMutiComplex来实现这个功能。 1.创建布景 这里创建3个布景来做示范。分别是Laye1,Layer2和Lay...

2013-10-22 08:15:44

阅读数:6704

评论数:8

【玩转cocos2d-x之十三】CCMenu的布局

前两天写个游戏,发现CCMenu的布局还是比较有意思的,这里总结一下,以便后用。 1.概况 CCMenu是cocos2d-x的菜单类,但它本身并不具备菜单具体属性,而是作为一个父节点,将一些具体类型的菜单添加进去来达到菜单目的的。我们正常会这么使用它:先创建子菜单项CCMenuItem,然...

2013-10-21 09:30:28

阅读数:9113

评论数:2

【玩转cocos2d-x之十二】plist解析工具:Anti_TexturePacker

之前拿了一些别人的图片素材,是用TexturePacker打包合成的,结果写程序的时候不知道每个合成前小png图的名字是什么,只能一个一个从plist文件中找,然后猜测对应的名字,再进行显示,如果不对,还要继续猜。。。坑爹啊,效率大大降低了,时间都耗在找图片名字上了。后来决定动手写一个解析plis...

2013-10-19 08:11:33

阅读数:24447

评论数:145

【玩转cocos2d-x之十一】定时器schedule

如果我们想定时执行一个动作怎么办?CCScheduler帮了我们一个大忙。 1.概况 CCNode内部封装了一个 [cpp] view plaincopy CCScheduler *m_pScheduler;   正是通过它我们可以很轻松地完成一些定时功能,...

2013-10-18 09:22:03

阅读数:20548

评论数:3

【玩转cocos2d-x之十】cocos2d-x坐标系

cocos2d-x采用的是笛卡尔平面坐标系,也就是平面上两条垂直线构成的坐标系,平面上任意一点都可以用(x,y)来表示。 (1)就坐标系方向而言,cocos2d-x分为屏幕坐标系和OpenGL坐标系。 (2)就节点本身而言,cocos2d-x分为绝对坐标系和相对坐标系。 1.屏幕坐标系 ...

2013-10-17 08:08:48

阅读数:13134

评论数:12

【玩转cocos2d-x之九】动作类CCAction

精灵也出来了,但是不会动的精灵是木有用的。。。CCAction就是负责来解决精灵运动的问题。 1.概况 CCAction直接从CCObject继承而来,注意它代表的是一个动作,是动词。精灵执行了这个动作,而不是名词。CCAction本身并没有什么功能,主要是定义了一些通用函数和虚函数...

2013-10-16 08:17:39

阅读数:8262

评论数:4

【玩转cocos2d-x之八】精灵类CCSprite

精灵类CCSprite可以说是游戏的主角了,也是我们平时最常用到的类。 1.概况 CCSprite本质上就是一个二维图片,是静态的。游戏中的动画只不过是让一张张静态图片快速更换达到的动态效果。CCSprite继承于CCNodeRGBA,并实现了CCTextureProtocol的接口...

2013-10-15 11:39:22

阅读数:9396

评论数:0

【玩转cocos2d-x之七】场景类CCScene和布景类CCLayer

场景类CCScene和布景类CCLayer都是作为一个容器来使用,这里简单地看下它们的实现: 1.场景类:CCScene CCScene类继承于CCNode,它的实现很简单,就是基本上没添加什么内容。。。它只是作为一个容器(父节点)的抽象概念存在。对比CCNode差别有: (1)构...

2013-10-14 14:34:25

阅读数:8901

评论数:2

【玩转cocos2d-x之六】节点类CCNode

节点类CCNode可以说是游戏元素的祖宗了,基本上我们看得到的游戏元素都是以它为原型进行扩展的。像CCScene,CCLayer,CCSprite,CCMenu,CCSpriteBatchNode等等都是从CCNode继承而来。另外如果我们要自定义精灵,那么从CCNode继承也是一个很不错的选择。...

2013-10-14 08:24:33

阅读数:9053

评论数:6

【玩转cocos2d-x之五】导演类CCDirector

既然cocos2d-x都帮我们封装好了,使得开发与平台无关,那接下来我们就单纯地开始好好玩游戏吧!这几篇是对cocos2d-x一些基本且重要的元素进行解释和API介绍,之前没有系统的看过API,有时候某些功能引擎都已经提供好了,不知道还是会自己去写。所以全面地了解一下是必须的。 1.概况 ...

2013-10-12 08:46:36

阅读数:9214

评论数:2

【玩转cocos2d-x之四】cocos2d-x怎么实现跨平台

cocos2d-x到底是这样实现跨平台的呢?这里以Win32和Android为例。 1.跨平台项目目录结构 先看一下一个项目创建后的目录结构吧!这还是以HelloCpp为例。   从左边目录可以看到,Classes和Resource已经平台无关了,而Classes中包含了...

2013-10-11 08:36:02

阅读数:13440

评论数:1

【玩转cocos2d-x之三】cocos2d-x游戏是怎么跑起来的

虽然cocos2d-x v3.0 alpha版已经出来了,也改进了不少,有兴趣的可以去尝尝鲜。因为后面可能还会配合cocoStudio写一下博客,而现在v1.0.0.0版本需要配合cocos2d-x v2.2.0使用。所以这里选择了V2.2.0版的cocos2d-x。 一个新的东西,从头开...

2013-10-10 08:14:53

阅读数:10100

评论数:7

【玩转cocos2d-x之二】游戏和引擎构成

1.游戏构成 我们以超级马里奥游戏作为蓝本来描述一下一个游戏的构成。 1.首先我们需要一个容器来放置游戏元素,每一个关卡都是一个容器,这叫场景。 2.蓝天白云,各种板砖水管,这些是布景,放置在关卡中,通过布景的叠加,构成了游戏的主要背景。 3.主角马里奥兄弟和各种小怪兽,这些叫精灵。这是游戏互动的...

2013-10-09 10:38:55

阅读数:6895

评论数:2

【玩转cocos2d-x之一】V2.2.0版本开发环境配置

现在cocos2d-x处在上升期,各个版本的变化还是比较大的,单从环境配置来看,从v2.0到v2.2就变化了不少。今天配置了一下V2.2.0环境,创建项目,并进行交叉编译,发现比之前麻烦了不少。这里稍微记录一下。3.0版本出来了,大概看了下目录和2.2的差不多,环境配置也基本一样。 1.VS,...

2013-10-08 14:11:56

阅读数:18328

评论数:54

提示
确定要删除当前文章?
取消 删除
关闭
关闭