cocos2d-x(win32)学习日志
热血枫叶
开朗、活泼
展开
-
cocos2d-x学习日志(2) --精灵类
一、简介在游戏中还有一个比较重要的元素,那就是精灵类,我们可以通过单张图片或者是贴图集的方式来生成精灵。精灵类的用法比较灵活,还有精灵批处理的方法帮助我们创建多个精灵并节约渲染效率。二、实例1.准备工作我的目录资源:利用纹理地图(texture atlas),把我们想用的图像都合并在一起。首先我们把想要用的图像都放到一个目录里, 再用Text原创 2013-08-21 11:39:24 · 1595 阅读 · 0 评论 -
cocos2d-x(2.1.4)之虚拟摇杆SneakyInput
这篇文章中,我们将用另一个虚拟摇杆类,SneakyInput,这个是开源的,已经有c++版,SneakInput c++的源码下载地址为:https://github.com/Ntran013/SneakyInput注意,这个下载下来需要修改,因为那是基于老版本的cocos2dx的。已修改后的源码下载地址为:http://download.csdn.net/detail/my183100521原创 2013-11-27 17:36:47 · 2665 阅读 · 0 评论 -
cocos2d-x封神榜demo开源源码
cocos2d-x封神榜demo开源源码客户端下载地址:http://pan.baidu.com/share/link?shareid=3744414230&uk=1714158962原创 2013-12-03 00:59:56 · 4828 阅读 · 0 评论 -
cocos2d-x学习日志(13) --A星寻路算法demo
你是否在做一款游戏的时候想创造一些怪兽或者游戏主角,让它们移动到特定的位置,避开墙壁和障碍物呢?如果是的话,请看这篇教程,我们会展示如何使用A星寻路算法来实现它!A星算法简介:A*搜寻算法俗称A星算法。这是一种在图形平面上,有多个节点的路径,求出最低通过成本的算法。常用于游戏中的NPC的移动计算,或线上游戏的BOT的移动计算上。实现原理:可参考这原创 2013-10-12 11:15:37 · 3296 阅读 · 0 评论 -
cocos2d-x封神榜(3) -- 【精灵的地图活起来了】
谈到地图不少人都说要做地图编辑器了,但是我暂时绕过这一步,如果不用寻路地图就不能移动?寻路就是会绕过障碍物的算法。 我做了一个简单的地图的思想,就是地图分层3层:背景层、可行区域层、遮罩层,但是地图就不寻路了,通过设置可行区域层来实现地图障碍物的方法。下面看一个视图,我把地图详细的分层了: OK,有了这个思路,大家应该也知道我要怎么做了?代码实现上怎么处理转载 2013-12-05 14:42:12 · 2274 阅读 · 1 评论 -
cocos2d-x封神榜(5) -- 【界面UI设计】
简单探讨一下如何在cocos2d-x的游戏引擎里面去制作各做交互UI界面,常见的UI如下: 人物头像,血条值,经验条,技能按钮,以及各种玩家交互的界面按钮:背包,人物属性,门派,等; 类似上面的图示交互UI,他们是悬浮于窗体上的。那么按照我现在做的层级架构就是这些UI操作,是不属于任何CCObject的,或者被继承的; 回到第一篇我对整个架构的分析,这转载 2013-12-05 14:50:23 · 2186 阅读 · 0 评论 -
cocos2d-x封神榜(2) -- 【精灵的八面玲珑】
继续上一篇文章继续聊吧,这章内容会比较多,也会附上代码,很多朋友加了群,大家在群里面探讨了很多东西,这让大家都觉得受益匪浅,这便是极好的,废话不多了,精灵是游戏的重要组成部分,那ARPG里面的精灵必然是要做得很细的,因为精灵要能动,能跑,能打,甚至要能做各种交互动作等等。 大家可以看一下下面的题,是精灵制作的流程思路: 上图的人物素材来自于网络流传的梦幻西转载 2013-12-05 14:29:37 · 1979 阅读 · 0 评论 -
cocos2d-x封神榜(4) -- 【怪物智能AI】
谈到怪物AI,我觉得就比较话多了,首先理解一下(Artificial Intelligence人工智能),人工智能是计算机科学的一个分支,人工智能是计算机科学技术的前沿科技领域。人工智能与计算机软件有密切的关系。各种人工智能应用系统都要用计算机软件去实现,许多聪明的计算机软件也应用了人工智能的理论方法和技术。 总而言之,言而总之,我理解的AI就是:用人类自己的思考模式去赋予游戏中角色转载 2013-12-05 14:46:50 · 2216 阅读 · 1 评论 -
cocos2d-x封神榜(1) -- 【研发思路及感想】
我半年前进入了目前的这家做教育行业的公司(在此之前一直从事原生态开发手游的迷茫之路),学习是一件很快乐的事情,来到这家公司我有了很多时间去学习,不管是公司业务,还是其他技术相关的。于是开始了cocos2dx的研发之路,觉得此路不在迷茫。通过对cocos2dx的了解,一步一步去实践,几乎现在每天下班回家,都会继续研究这方面的知识。我曾经研发过页游,和大型的RPG手游的一些经验,首先说游戏类型,如果我转载 2013-12-05 14:20:04 · 2092 阅读 · 0 评论 -
cocos2d-x学习日志(14) --A星寻路算法之45度地图
一、A星搜索他就是一种启发性的算法,根据现在到达这个位置的步数及之后的“估计步数”,即f=g+h,f是整个从起点到终点的代价,g是从起点到我们目前位置的步数,h是从目前位置到终点的估计值,注意这里是估计值,所以我们得到解并不一定是最好的解,具体解“好”到什么程度呢?就是要根据h的估计的好坏,因此只是一个较优解。(以上的部分只能说是我对A星算法较为浅的理解,只能算是初探吧,有不足之处欢迎原创 2013-12-16 12:03:54 · 5393 阅读 · 9 评论 -
cocos2d-x3.0 + vs2012环境配置
cocosd-x 3.0版本传说做了很多优化,性能有了很大提升,支持c++ 11,目录结构和类名也改了,取消了各种类的CC前缀,比如CCSprite变成了Sprite,支持CocoStudio UI编辑器等。总之,比以前的版本效率要好,也更好用了。很久没有玩cocos2d-x了,现在重新来温习一下配置3.0版本,现在最新的版本是cocos2d-x-3.0alpha1。原创 2014-02-24 12:20:08 · 2588 阅读 · 0 评论 -
cocos2d-x学习日志(16) --富文本
最近做聊天系统,遇到棘手的问题,就是字体要支持多颜色、换行、表情(图片)、超链接!我们不会从OpenGL底层来做这个工作,因为那样工作量非常大,不现实,考虑在已有的cocos2d-x接口上进行处理,来组合出我们需要富文本。因Android IOS 似乎都支持 freetype2,所以就优先考虑了。1.下载准备: freetype2:http://download.savannah.gnu原创 2014-03-12 22:30:47 · 9073 阅读 · 26 评论 -
cocos2d-x学习日志(15) --公告栏的实现(文字左右移动)
公告栏用的是CClayer(层)或者node节点,锚点位置是(0,0),文字信息使用CCLabelTTF保存,锚点位置是(0,0),使用的时候将它加入到node里面就好了文字移动的思路是: 每次都update公告的CCLabelTTF的坐标,为了让它从右往左进行移动,右边栏出来,左边栏消失,需要设置一下CCLabelTTF的可显示区域,CCLabelTTF::se原创 2014-03-11 17:36:14 · 2721 阅读 · 0 评论 -
cocos2d-x学习日志(17) --新手向导
新手引导:为了让第一次进入游戏的玩家能更加轻松容易的了解游戏功能。 如图:实现思路: 1.采用遮罩的形式突出引导重点,同时屏蔽其它功能。 2.在遮罩添加解说UI及相应动画 如图: 注:光亮区域即是可触碰区域。具体实现:1.CCClipingNode 为了实现遮罩功能,我们选择一个模板切割图片的节点-- CCClipingNode.它的继承关系如下:首先它是一个节点,继承于CCNod原创 2014-04-19 15:17:50 · 3162 阅读 · 7 评论 -
cocos2d-x学习日志(18) --程序是如何开始运行与结束?
问题的由来 怎么样使用 Cocos2d-x 快速开发游戏,方法很简单,你可以看看其自带的例程,或者从网上搜索教程,运行起第一个HelloWorld,然后在 HelloWorld 里面写相关逻辑代码,添加我们的层、精灵等 ~ 我们并不一定需要知道 Cocos2d-x 是如何运行或者在各种平台之上运行,也不用知道 Cocos2d-x 的游戏是如何运行起来的,它又是如何渲染界面的 ~~~两个入原创 2014-06-10 12:16:05 · 3538 阅读 · 2 评论 -
cocos2d-x -- 渠道SDK【棱镜】接入(2)
上一章《cocos2d-x -- 渠道SDK【棱镜】接入(1)》,已经接入好了SDK,现在添加渠道了,以豌豆荚为例。具体流程:1.添加渠道:2.输入安全密钥、appKey_id.3.获得相应回调地址:4.配置回调地址:就这么简单,这样就接入好渠道了,具体怎么运营,就让运营部分去负责吧。^^原创 2014-09-03 20:16:52 · 2354 阅读 · 0 评论 -
cocos2d-x 读取文本文件(txt)
一、素材(untitled.txt)helloWorld二、实现代码在HelloWorldScene类,init()添加如下代码: std::string fullPath = CCFileUtils::sharedFileUtils()->fullPathFromRelativePath("untitled.txt"); unsigned原创 2013-11-09 17:40:50 · 6461 阅读 · 0 评论 -
cocos2d-x CSV文件读取 (Excel生成csv文件)
一、准备素材 1.EXCEL表:内容如下 2.EXCEL表转换为csv文件:方法很多,网上搜索就有。 但要注意:文件保存为UTF-8格式的(否则中文显示乱码)二、实现代码:1.操作csv方法类为CCSVParseCCSVParse.h#ifndef __cocos2d_x_Excel__CCSV原创 2013-11-09 14:38:22 · 4396 阅读 · 0 评论 -
cocos2d-x学习日志(3) --动画类
CCAnimation *animation = animationWithStrip("miku.png",4, 0.1f, 4, 4, 3); CCSprite *pSprite = CCSprite::spriteWithSpriteFrameName("miku1.png"); pSprite->setPosition(ccp(size.width/2,size.height/2)); pSprite->runAction(CCRepeatForever::actionWit原创 2013-08-22 09:56:22 · 1465 阅读 · 0 评论 -
cocos2d-x学习日志(4) -- CCCallFunc系列函数的应用
一、简介cocos2d-x常用回调函数有:CCCallFunc,CCCallFuncN,CCCallFuncND它们之间区别:CCCallFunc:执行对应的回调函数,其中回调函数不可带参数CCCallFuncN:执行对应的回调函数,其中回调函数带一个参数,其中参数CCNode* sender,被传递到run这个action的对象中。CCCallFuncND:和原创 2013-08-23 16:56:55 · 1899 阅读 · 0 评论 -
cocos2d-x学习日志(5) --定时器
一、cocos2d-x 常用定时函数:scheduleUpdate,schedule,scheduleOnce;二、使用方法1. scheduleUpdate1.1 使用方法this->scheduleUpdate()1.2 重载update(float fDelta),因为游戏节点在游戏运行的每一帧被调用一次update函数。HelloWorldScene原创 2013-08-23 18:24:54 · 2591 阅读 · 0 评论 -
cocos2d-x-2.0新增加了几个UI控件,这里我介绍下常用的这几个UI控件(CCControlSlider、CCControlSwitch、CCControlColourPicker)使用方法
原文地址: http://www.cocos2dev.com/?p=252cocos2d-x-2.0新增加了几个UI控件,这里我介绍下常用的这几个UI控件(CCControlSlider、CCControlSwitch、CCControlColourPicker、ListView)的使用方法。一、CCControlSlider[cpp] vi转载 2013-08-26 09:31:29 · 1824 阅读 · 0 评论 -
cocos2d-x学习日志(7) --CCScrollView和CCTableView的使用
一、简介在游戏和应用中经常要实现左右滑动展示游戏帮助、以列表显示内容的UI效果,就像android中的Gallery和ListView。本文通过CCScrollView和CCTableView分别来实现这两个效果,基于cocos2d-x 2.0.4版本。首先来简单了解一下这两个东东,CCScrollView本身是一个CCLayer,而CCTableView是CCScrollView的子类,原创 2013-08-26 10:15:33 · 2777 阅读 · 1 评论 -
cocos2d-x学习日志(6) --触屏事件
一、简介一般在菜单中,不是继承自CCLayer,这时候要检测触屏,就需要两步就可以完成第一步:setIsTouchEnabled(true);这句话在类初始化的时候加入第二步:重写相应的函数:ccTouchesBegan(CCSet *pTouches,CCEvent *pEvent);//触屏开始事件ccTouchesMoved(CCSet *pTouch原创 2013-08-24 17:32:55 · 1757 阅读 · 0 评论 -
cocos2d-x学习日志(8) --瓦片地图集
Tiled Map Editor是Cocos2d-x支持的地图编辑器,使用Tiled编辑出的地图可以很方便的被Cocos2d-x使用Tiled的官网是Tiled Map Editor。我使用的地图编辑器是QT版本。一、用Tiled地图编辑器编辑地图1)选择“文件->新地图”,新建地图工程,在弹出的对话框中设置地图的高度和宽度、图块的大小以及地图的方向,如图2)选择“地图->新图原创 2013-08-28 09:35:06 · 1895 阅读 · 0 评论 -
cocos2d-x学习日志(9) --战争烟雾
一、原理 在开发游戏的过程中,特别是地图编辑器中,需要利用最少的资源,实现最丰富的地形地貌。另外,就是在一些策略类游戏里经常用到的战争迷雾,如图战争迷雾制作原理参考以下文章: http://bbs.9ria.com/thread-157487-1-1.html二、准备工作1)瓦片地图的图素:2) 创建TXM地图原创 2013-08-29 15:22:48 · 2528 阅读 · 0 评论 -
cocos2d-x学习日志(10) --射击游戏(喵星战争)
一、纵版射击游戏的特点纵版射击游戏是一种比较传统的游戏,在各种游戏平台都有非常经典的游戏作品。对于游戏开发者来说,这种游戏题材非常适合加入特效和创新的玩法。但是无论怎样改变,该类游戏都具备以下特点:滚动背景、主角、敌人、子弹、特效二、喵星战争简介喵星战争在传统纵版设计游戏的基础上进行创新。主角不是传统飞机造型,而是一只小猫,敌人也不是敌机与怪兽,而是狗博士,同时子弹也做了相应变化,原创 2013-08-29 21:11:00 · 4921 阅读 · 8 评论 -
cocos2d-x学习日志(1) -Win7环境下VS2010配置Cocos2d-x-2.1.4最新版本的开发环境
详细搭建步骤如下:一、Android 开发环境搭建1、Android 开发工具Android开发环境搭建不是重点,相信看此文章的很多人都已经搭建成功,这里随便概述性的说说。1.1 下载 JDK1.2 下载 Eclipse1.3 下载 Android SDK1.4 启动Eclipse , 安装 ADT2、下载安装Android NDK我使用转载 2013-08-20 19:48:24 · 2231 阅读 · 0 评论 -
cocos2d-x学习日志(12) --弹出对话框的设计与实现
我们时常需要这么些功能,弹出一个层,给与用户一些提示,这也是一种模态窗口,在没有对当前对话框进行确认的时候,不能继续往下操作。功能分析我们设计一个对话框,对话框上有几个按钮(个数可定制),当然有个标题,会让别人一眼看出它之功用,里面可以有些详细的提示文字,需要是模态窗口,而且窗口的大小可变,这样能够更好的适应不同的屏幕的大小。当然还有一个重要的功能,弹出效果 ~ 虽原创 2013-10-11 09:41:39 · 5240 阅读 · 0 评论 -
cocos2d-x学习日志(11) --cocos2d-x 精灵遮罩
转载请标明:转载自【小枫栏目】,博文链接:http://blog.csdn.net/rexuefengye/article/details/10553487一、精灵遮罩的原理:1.理解颜色混合。精灵有个成员函数:setBlendFunc(),这个函数以一个ccBlendFunc类型的变量为参数。这个ccBlendFunc是个结构体。这个结构体中有两个变量:src原创 2013-09-26 16:02:39 · 4650 阅读 · 4 评论 -
cocos2d-x 数学函数、常用宏整理(1)
数学类 cocos2d-x 里使用最多的数学类型是CCPoint,一个点,本质上也是一个向量,对于向量和向量之间有很多的数学操作要做,oh我知道要干什么,也许我知道怎么求一个值但是不知道怎么求得高效(或者不知道),怎么办我能偷懒吗?那当然可以。这其实并不是一个懒的标准,因为有一些方法写多了也可能确实稍微有那么点麻烦,所以自然cocos2d提供了一套ccp系列来帮助我们完成很多原创 2013-11-08 10:47:43 · 1792 阅读 · 0 评论 -
cocos2d-x 数学函数、常用宏整理(2)
语句宏 常用的,首先第一个,断言。CCAssert(cond, msg); // 断言表达式cond为真,如果不为真,则显示字符串msg信息 遍历CCARRAY、CCDICTIONARY的宏CCArray* _array;CCObject* _object; // 用来遍历数组的临时变量CCARRAY_FOREACH(_a原创 2013-11-08 11:06:03 · 1617 阅读 · 0 评论 -
Cocos2dx利用CCSAXParser解析XML数据
Cocos2dx利用CCSAXParser解析XML数据1.、准备素材(xml文件)testExcel.xml1000娃哈哈82.34000himitrue 2.实现代码:解析XML类:HXmlParse类HXmlParse.h#ifndef __cocos2d_x_Excel__HXmlParse__#define _原创 2013-11-09 17:14:34 · 3032 阅读 · 0 评论 -
cocos2d-x -- 渠道SDK【棱镜】接入(1)
棱镜SDK简介 若想让游戏上线,渠道接入步骤是必不可少的,为了避免一对一接入渠道问题,我选择了棱镜SDK,因为棱镜是游戏与渠道SDK的中间层,为CP厂商屏蔽各个渠道SDK之间的差异,整个接入过程,不会改变各个渠道SDK的功能、特性、参数等,对玩家完全透明。 棱镜平台基本工作原理:http://dev.ljsdk.com/ljdocs/lj_principle.html 棱镜技术接原创 2014-09-03 19:23:48 · 4041 阅读 · 2 评论