Cocos2d-x 2.x
最后的牛仔
不断的学习,追求技术上的自由!
展开
-
判断骨骼动画中是否有相应的动作
判断一个骨骼动画中是否有需要的动画:项目中有一个需求是需要判断骨骼动画中是否有需要得到动画,自己追踪了下代码,用下面的方法来实现了这个功能:先上代码:原创 2014-08-29 22:27:34 · 1245 阅读 · 0 评论 -
Cocostudio骨骼动画的复用
同一个游戏中,有很多角色的骨骼动画是能够复用的,甚至是一些骨骼。在开发过程中,做好一个角色的骨骼动画,另存出下一个角色的项目,将角色的骨骼进行调整,动作进行微调,这样就又有了一个新的角色。但是,这时导出的骨骼动画的文件和上一个角色导出的骨骼动画的文件资源名可能会重复,那么,在使用的时候就会出现,两个角色的贴图是同一套资源。解决方案:对资源的路径进行更改,当然更改的方式有两种。第一种原创 2015-04-13 13:01:51 · 1089 阅读 · 0 评论 -
cocos2d2.x中的CCRect
CCRect在引擎中是一个经常被用到的属性,用的比较多的地方就是boundingbox,有的时候对于CCRect的具体实现不明白,使用的时候就会有错误。CCRect有两个属性:CCPoint,CCSize,一个表示的是原点,一个表示的是长宽,这样就构成了一个以左下角为原点,Size为长宽的矩形。所有用到CCRect的地方都是以这个为基准的。这样,Rect的最小值就是远点,最大值就是右上点。原创 2015-04-07 11:56:01 · 1258 阅读 · 0 评论 -
俄罗斯方块的设计思路
前段时间帮人写了个俄罗斯方块的Demo,今天有时间分享下设计思路。分析:游戏中会出现7种形状,每种形状在游戏中都能够旋转,形成新的形状。每种形状都是由方形的色块组成的。数据类:Shape:形状类,总共7个。Block:方块类,其实只有一个贴图的属性。关于旋转:为每个形状寻找旋转点,每个形状的旋转点都是固定的。红色的点为参考点,所在行列为(x,y)在S原创 2015-04-10 18:43:32 · 20443 阅读 · 1 评论 -
产生连续的随机数
之前用到的随机数是以时间为种子的,当连续产生的时候,就会出现问题,更改了下。在设置种子的时候加上一个随机数。试了试,感觉还OK。static unsigned int s_seed ;void Utils::random_seed(int seed) { if(!seed) s_seed=time(NULL); else s_seed=seed;}int Utils::random_原创 2015-04-01 12:02:36 · 1035 阅读 · 0 评论 -
动态设置CCNode的zOrder
游戏中有一个需求,敌人在移动的过程中,可能会由于速度的不同,产生相互的遮挡。这个需要动态的设置敌人的zOrder,在TestCpp中见过SpriteTest中的设置zOrder,就模仿着写了个。基本思路:1. 确定一个评定渲染顺序的标准2. 按评定标准给需要动态渲染的对象排序3. 重置每个对象的zOrder,并reOrder 测试的时候用的是静态图,产生了2原创 2015-04-02 16:52:03 · 1115 阅读 · 0 评论 -
通过cocos裁切图片,将大图分为小图
游戏要用动画,美工还没做出来,于是,从网上找来了几张图,不过图是JavaME时代的图,动画都是靠裁切来显示的,于是想将大图分割成小图来用。图片规格:图中每个小图的大小是相等的,基本上都是正行,整列的。上代码:const char * CutNormalImage::IMAGE_FORMAT_NAME = "image_ (%d).png" ;const char * pSav原创 2015-04-02 19:42:59 · 8691 阅读 · 0 评论 -
关于Cocos2D中使用数据库
就不说为什么要用到数据库了,说下自己在使用过程中遇到的问题。数据库的使用无论是官方论坛,还是大神们的博客里都有详细的介绍,有的甚至可以直接拿过来就用。关于我就不多说了,官网的教程:http://cn.cocos2d-x.org/tutorial/show?id=1921比较详细的教程(个人认为):http://blog.csdn.net/azhou_hui/article/deta原创 2015-03-06 20:13:06 · 878 阅读 · 0 评论 -
不用物理引擎,通过在CocoStudio中画的碰撞区域检测碰撞
在介绍如何实现之前,先介绍一种检测碰撞的方法:原创 2014-08-29 23:17:08 · 1013 阅读 · 0 评论 -
球球大作战贪吃蛇大作战类似游戏算法优化
Agario的服务器端源码:https://github.com/huytd/agar.io-clone/blob/master/src/server/server.js目测这个球球大作战是抄agario的。。Agario用的是四叉树quadtree.四叉树每一层可以把一个平面空间分成四份(一般是四等分),这样提取在平面坐标上接近的object就很快。所以经常被用来处理这种碰撞其实超简原创 2017-05-08 20:37:43 · 3798 阅读 · 0 评论