自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(18)
  • 资源 (5)
  • 收藏
  • 关注

原创 华容道06--屏幕点击事件和角色间的碰撞

角色的碰撞检测

2015-04-14 20:34:27 1347

原创 华容道05--关卡数据的显示

前面写了那么多,现在就是用前面信息的时候,把Level中的关卡显示出来。首先,需要有一个关卡类的引用,这样才能得到我们想要的信息。然后,需要一个Vector来存储RoleSprite。 代码:GameLayer.hprivate: Level * m_pLevel;//<关卡数据的引用 cocos2d::Vector m_pRoleSpriteVec ;// 

2015-04-14 20:29:48 1734

原创 华容道04---RoleSprite的设计

RoleSprite负责显示角色

2015-04-14 20:26:55 1159

原创 华容道03---关卡类的设计和数据读取

关卡类中需要有没关初始的地图数据,即每个角色的位置。属性:ID:所有RoleID:用到哪个Role写哪个,每个ID用‘,’分开对应RoleID的行列:读取的时候有一个Row数据和一个Col数据,将这两个数据合并为1个Pos数据。 Level.h #ifndef _LEVEL_H_#define _LEVEL_H_#include "cocos2d.h"USI

2015-04-14 20:24:17 2212

原创 华容道开发02---角色类的设计与数据读取

角色类的设计和数据读取

2015-04-14 20:21:49 1233

原创 华容道01--分析

一直想写一个华容道的游戏,现在就通过学习Cocos2D3.x写一个华容道的游戏吧。这个游戏的要求是,最后生成安卓项目,安装到自己的手机上玩玩吧!开发周期初步定在2-3天。  华容道有多种开局方式,不同的开局方式就是不同的关卡,所以需要有一个选关界面。 再就是游戏界面。 在华容道中,每个元素所占的空间是一定的,兵是最小的,也是最基本的单位,最大的占四个单位空间,然

2015-04-14 19:39:42 1836

原创 Cocostudio骨骼动画的复用

同一个游戏中,有很多角色的骨骼动画是能够复用的,甚至是一些骨骼。在开发过程中,做好一个角色的骨骼动画,另存出下一个角色的项目,将角色的骨骼进行调整,动作进行微调,这样就又有了一个新的角色。但是,这时导出的骨骼动画的文件和上一个角色导出的骨骼动画的文件资源名可能会重复,那么,在使用的时候就会出现,两个角色的贴图是同一套资源。解决方案:对资源的路径进行更改,当然更改的方式有两种。第一种

2015-04-13 13:01:51 1113

原创 俄罗斯方块的设计思路

前段时间帮人写了个俄罗斯方块的Demo,今天有时间分享下设计思路。分析:游戏中会出现7种形状,每种形状在游戏中都能够旋转,形成新的形状。每种形状都是由方形的色块组成的。数据类:Shape:形状类,总共7个。Block:方块类,其实只有一个贴图的属性。关于旋转:为每个形状寻找旋转点,每个形状的旋转点都是固定的。红色的点为参考点,所在行列为(x,y)在S

2015-04-10 18:43:32 20491 1

原创 飞机大战开发05按角度发射的子弹和拖尾子弹的实现

多角度的子弹:这个的实现可以仍然用MoveBy动作来完成,设定一个子弹偏移的角度,计算出到出屏幕,子弹在x轴和y轴上移动的距离,移动就OK了。上代码: void GameLayer::createBulletByAngle(float angle){ Size screenSize = Director::getInstance()->getWinSize() ; Vec2

2015-04-10 18:37:56 7756 1

原创 飞机大战开发04子弹与敌机的碰撞检测

先是敌机与玩家子弹的碰撞检测:代码:GameLayer.hvoid GameLayer::update(float dt){ for (int i = 0 ;i < m_pEnermyVec.size();i++) { Sprite * pEne = m_pEnermyVec.at(i) ; for (int j = 0 ; j < m_pPlayerBullet.siz

2015-04-09 10:24:13 5621

原创 飞机大战03之飞机发射子弹,添加敌人

飞机发射子弹:弹幕,是雷电游戏的精华。这就需要对子弹的运动轨迹进行控制。先做一个最简单的子弹发射,后面再添加各种弹幕(实际上主要是研究弹幕)说是最简单,其实也是最普通的子弹发射,产生一个颗子弹移动就OK了。方法:做一个子弹发射的计时器,产生子弹,子弹做MoveBy动作就OK了。代码:GameLayer.cppvoid GameLayer::fireSchedule(fl

2015-04-09 10:19:30 5161

原创 飞机大战开发02之添加玩家飞机

玩家的飞机直接用Sprite来创建代码:GameLayer.hSprite * m_pPlayerPlane ;GameLayer.cppm_pPlayerPlane = Sprite::create("myPlane.png") ;m_pPlayerPlane->setPosition(Vec2(screenSize.width / 2,screenSize.height

2015-04-08 20:05:25 521

原创 飞机大战开发01之添加主逻辑层,显示背景的移动

GameLayer负责游戏的主逻辑的实现:代码: GameLayer.h#ifndef _GAME_LAYER_H_#define _GAME_LAYER_H_#include "cocos2d.h"USING_NS_CC ;class GameLayer : public Layer{public: static cocos2d::Scene* createS

2015-04-08 19:59:50 2184

原创 cocos2d2.x中的CCRect

CCRect在引擎中是一个经常被用到的属性,用的比较多的地方就是boundingbox,有的时候对于CCRect的具体实现不明白,使用的时候就会有错误。CCRect有两个属性:CCPoint,CCSize,一个表示的是原点,一个表示的是长宽,这样就构成了一个以左下角为原点,Size为长宽的矩形。所有用到CCRect的地方都是以这个为基准的。这样,Rect的最小值就是远点,最大值就是右上点。

2015-04-07 11:56:01 1266

原创 cocos2D-x3.4 新建项目的批处理文件

做了一个3.4版本的批处理文件,分享下。希望对新手有帮助。新建个txt,将下面的代码拷进去,改后缀为.bat,就OK了,原理不说了,有兴趣学学批处理吧!echo offecho 第一步请输入要创建的项目名称,例:CocosTestset /p name=echo 第二步请输入要创建的项目的包名 例:com.dd.CocosTestset /p pack=cocos new %na

2015-04-03 00:42:45 598

原创 通过cocos裁切图片,将大图分为小图

游戏要用动画,美工还没做出来,于是,从网上找来了几张图,不过图是JavaME时代的图,动画都是靠裁切来显示的,于是想将大图分割成小图来用。图片规格:图中每个小图的大小是相等的,基本上都是正行,整列的。上代码:const char * CutNormalImage::IMAGE_FORMAT_NAME = "image_ (%d).png" ;const char * pSav

2015-04-02 19:42:59 8758

原创 动态设置CCNode的zOrder

游戏中有一个需求,敌人在移动的过程中,可能会由于速度的不同,产生相互的遮挡。这个需要动态的设置敌人的zOrder,在TestCpp中见过SpriteTest中的设置zOrder,就模仿着写了个。基本思路:1.   确定一个评定渲染顺序的标准2.   按评定标准给需要动态渲染的对象排序3.   重置每个对象的zOrder,并reOrder 测试的时候用的是静态图,产生了2

2015-04-02 16:52:03 1142

原创 产生连续的随机数

之前用到的随机数是以时间为种子的,当连续产生的时候,就会出现问题,更改了下。在设置种子的时候加上一个随机数。试了试,感觉还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 1040

lua实现的一个2048小程序

使用lua实现的一个2048小程序,实现了2048的基本功能。

2016-01-06

android程序间数据的共享(ContentProvider和ContentResolver的使用)

安卓程序间数据共享的实现,包含两个程序,共享资源的程序和读取资源的程序,共享资源的程序包含了SQLite数据库的使用。

2015-12-24

安卓音效文件加载系统

实现安卓音效资源的加载,卸载,播放。 这里将其集成在一个单例对象中,能够更方便的控制资源的加载。

2015-11-25

华容道的Cocos2D-3.4实现

华容道的cocos实现,用cocos2dx-3.4开发,设计了关卡数据和角色数据,可以自己写关卡,碰撞检测排布都已OK。

2015-04-14

c++tutorial

c++入门教程,纯英文教程。介绍c++的基础知识,让你更快入门。

2014-09-16

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

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